Explorer-Fenster in eigener Anwendung

12/10/2007 - 11:09 von Peter Tübben | Report spam
Hallo,

ich plane derzeit, mir einen simplen Dateimanager in der klassische
Zwei-Fenster-Ansicht zu basteln.

Um nicht alles selber programmieren zu müssen (Dateioperationen, Drag
& Drop, Kontextmenues, etc.), war mein erster Gedanke, zwei Explorer-
Instanzen zu starten und diese dann mit SetParent() in meine Anwendung
zu verfrachten. Allerdings erweist sich das als komplizierter als
gedacht, weil die neu geöffneten Fenster keine richtigen Prozess-IDs
haben (d.h., sie haben kurz nach Start eine Prozess-ID, werden danach
aber in den Prozess des Mutter-Explorers eingeklinkt und sind somit
nicht mehr eindeutig identifizierbar (nur noch mit FindWindow(), was
mir zu unsicher ist)).

Meine Frage: Gibt es eine andere Möglichkeit, die Funktionalitàten des
Original-Windows-Explorers in die eigene Applikation einzubinden ohne
alles selber programmieren zu müssen?

Danke im voraus & Grüße ... Peter
 

Lesen sie die antworten

#1 Jens Müller
12/10/2007 - 11:43 | Warnen spam
Meine Frage: Gibt es eine andere Möglichkeit, die Funktionalitàten
des
Original-Windows-Explorers in die eigene Applikation einzubinden ohne
alles selber programmieren zu müssen?



Ja, es geht:
Du nimmst als Baumansicht ein TreeView und als Dateiansicht ein
Listview aus den Commoncontrols. Dann geht die Arbeit los

Ich habe hier ein Beispiel von Brad Martinez vorliegen, dass wirklich
gut gelungen ist, alle Icons, Kontextmenüs, etc sind genauso wie im
Explorer. Drag & Drop ist nicht implementiert, könnte aber sicher
hinzugefügt werden.
http://btmtz.mvps.org/vbexplorer/

Wenns ein bisschen komplizierter sein darf, dann:
http://btmtz.mvps.org/enumdeskvb/

HTH,

Jens

Ähnliche fragen