Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Windows Explorer Kontextmenü erweitern (InprocessServer) (https://www.delphipraxis.net/3095-windows-explorer-kontextmenue-erweitern-inprocessserver.html)

Andreas2k 22. Feb 2003 18:39


Windows Explorer Kontextmenü erweitern (InprocessServer)
 
Hallo,
ich möchte mein Programm in das Kontextmenü vom Windows Explorer eintragen mit Icon (Wie WinZip, WinRar etc.) Der Eintrag soll auch angezeigt werden wenn keine Datei ausgewählt ist (also auch wenn man in das leere Fenster rechts klickt)

Der Benutzer soll also in einem Ordnerfenster Rechts klicken und z.B. den Menüpunkt "Projektordner erstellen" oder "Datei Neu \ Projektordner erstellen" auswählen können damit mein Programm dann eine Ordnerstruktur in diesem Ordner erstellen kann.

Ich muss also wissen wie ich
Mein Programm + Icon in das Kontextmenü kriege (unabhängig davon ob eine Datei ausgewählt wurde oder nicht (Ich will ja eine Ordnerstruktur erzeugen und keine Datei))
und wie ich den aktuellen Pfad (in dem die Aktion ausgelöst wurde) ermittle.


Ich habe schon ein bissel in Registry rumgestöbert und herausgefunden das WinZip und WinRar das über einen InprocessServer machen.

Kann mir jemand helfen? Beispiel oder Link zu Tutorial wäre Hilfreich

Danke im voraus :wink:

MathiasSimmack 22. Feb 2003 20:34

Das nennt sich Shell-Erweiterung (Shell-Extension). Ein einfaches Beispiel liegt bei Delphi bei.

Christian Seehase 23. Feb 2003 01:36

Moin Andreas,

Du könnest auch mal im PSDK nachschlagen.
Dort ist unter der Rubrik:

- Shell Basics: Extending the Shell

und dort dann unter

- Extending Shortcut Menues

recht gut beschrieben wie's geht.

Ein Context Menu Handler, wie ihn z.B. WinZip benutzt ist nicht immer zwingend erforderlich.

Falls Dir der Download des PSDK zu gross ist (ca. 360MB) könntest Du das wohl auch direkt online unter msdn.microsoft.com nachschlagen.

Andreas2k 24. Feb 2003 18:03

Danke! werde ich mir mal anschauen


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 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