![]() |
Explorer Shell Extension wie TortoiseXXX
Hallo!
Ich möchte eine Shell-Extension schreiben, die gleich funktioniert wie die von TortoiseCVS / TortoiseSVN. 1.) Ich möchte einen Satz Dateien/Verzeichnisse auswählen können und bei Rechtsklick wird das Explorermenü um zu den Dateien/Verzeichnissen passenden Einträge erweitert. d.h. ich brauch einen Event beim Rechtsklick und eine Möglichkeit festzustellen was ausgewählt ist. 2.) Für den rechtsklick in den rechten Teil vom Explorer-fenster brauch ich auch einen Event - damit wähl ich dann einfach alle Files im Folder aus. Wie wo was??!? Danke, Ralf |
Re: Explorer Shell Extension wie TortoiseXXX
Zitat:
Zitat:
Zitat:
![]() |
Re: Explorer Shell Extension wie TortoiseXXX
Ich weiß nicht, ob das bei D2006 noch dabei ist, aber es gibt (unter Delphi 5) eine Demo unter {$DELPHI}\Demos\Activex\Shellext
|
Re: Explorer Shell Extension wie TortoiseXXX
Zitat:
|
Re: Explorer Shell Extension wie TortoiseXXX
Zitat:
Allerdings: Das Beispiel funktioniert unter Delphi 5 brav. Nachdem man es compiliert kann man es über "Start/ActiveX-Server registrieren" im System registrieren und es kommt auch das Context-Menü. (Es wird auch zum Projekt eine tlb-Datei erzeugt, keine Ahnung wo die herkommt?!?) Bei Delphi2007 bleibt der "...registrieren" Eintrag ausgeblendet. Wenn man den Job manuell mit "regsvr32 CONTMENU.dll" erledigt, so kommt trotzdem kein Kontext-Menü. Man kann die dll sogar löschen, was heisst, das se nie vom Explorer geladen wird. Ich muss das Programm aber unter D2007 entwickeln, D5 hab ich nur noch für Notfälle auf einer VM liegen. Hilfe, hilfe! Ad OldGrumpy: Danke für den überaus hilfreichen Tip :gruebel: haben wir heute im Witzkisterl geschlafen? |
Re: Explorer Shell Extension wie TortoiseXXX
Zitat:
Wenn man bei euch das Beispiel compiliert, wird der "ActiveX registrieren" Eintrag im Delphi-Menü aktiviert? (Vielleicht hab ich ja mein Delphi kaputtkonfiguriert) Danke, Ralf |
Re: Explorer Shell Extension wie TortoiseXXX
Das Demo hat einfach schon immer einen kleinen Bug gehabt, Lösung siehe dieses
![]() ![]() Blöderweise hab ich feststellen müssen, dass das Beispiel mir nichts (oder zumindest weniger als erwartet) bringt, weil ich meine Anwendung ja nicht für einen bestimmten Filetypen (hier im Beispiel "DelphiProject") registrieren will, sondern allgemein das Explorer-Menü erweitern will. Wie nun also? Vielen Dank im voraus! |
Re: Explorer Shell Extension wie TortoiseXXX
wenn ich mich recht entsinne, registriert man shellextensions (unter HKEY_CLASSES_ROOT) mit einem classID-schlüssel und einem zugehörigen ContextMenuHandler-Schlüssel unter dem ShellExt-Schlüssel des entsprechenden Dateitypes bzw. unter *.
HTH Frank |
Re: Explorer Shell Extension wie TortoiseXXX
Vielleicht ist auch EasyNSE (
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz