Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
23. Aug 2015
Hast du denn meine Ausführungen überhaupt nicht gelesen? :?
Ich habe diesen Thread auf deine Frage hin erstellt: http://www.delphipraxis.net/186253-windows-bug-mit-bestimmter-netzlaufwerkskonstellation-*herausforderung-gesucht-*.html
Das Verhalten ist eben ein anderes, wenn man das Laufwerk per Kontextmenü im Explorer trennt als wenn man irgendeine andere Möglichkeit verwendet...
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
23. Aug 2015
Ich sehe das simulierte Anklicken des Kontextmenüpunktes aktuell als einzige Möglichkeit, das Problem zu lösen (siehe http://www.delphipraxis.net/186253-windows-bug-mit-bestimmter-netzlaufwerkskonstellation-*herausforderung-gesucht-*.html).
Allerdings ist das Ergebnis per IContextMenu oder per CoShell (was ich zwischenzeitlich alternativ ausprobiert habe) ja ebenfalls unzureichend.
Solange man...
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
18. Aug 2015
@einbeliebigername
Vielen Dank für die Hilfe! Ich habe die Funktionen dazu zwar auch schon gefunden, aber irgendwie habe ich es trotzdem nicht zum Laufen bekommen. Ich habe in der Zwischenzeit jedoch eine wesentlich einfachere Möglichkeit über die Jcl gefunden, die intern wohl einfach viel der Shell-Programmierung abnimmt:
ItemIdList := PathToPidlBind('Z:\', Folder);
if ItemIdList <> nil...
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
14. Aug 2015
Ja, das stimmt schon. Aber ich muss zugeben, dass ich diese Shell-Programmierung teilweise nicht so ganz verstehe. Deshalb komme ich leider auch nicht drauf, wie ich von dem IContextMenu das gewünschte Item zum Ausführen finde.
Nach OLECheck(ShellFolder.GetUIObjectOf(0, 1, PIDL, IID_IContextMenu, aPrgOut, Pointer(aContextMenu))); ist das Kontextmenü in aContextMenu drin. Aber nun muss ich da...
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
14. Aug 2015
Der Code ist ein vollständiges Programm. Wenn Du ein neues Projekt anlegst, den Code einfügst und den einen Aufruf einem Button hinzufügst, kannst Du beim Klick auf den Button das Kontextmenü öffnen, als hättest Du gerade einen Rechtsklick auf eine Datei oder ein Laufwerk im Explorer durchgeführt. In dem Fall wäre es das Kontextmenü von C:
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
14. Aug 2015
Korrekt!
Aber um an diese Aktionen zu kommen, brauche ich ja erst das Kontextmenü, oder? Zumindest war das mein Gedankengang...
Forum: Win32/Win64 API (native code)
Delphi
by CodeX,
14. Aug 2015
Ich möchte gerne einen Menüpunkt aus dem Kontextmenü des Windows Explorers ausführen.
Nach einigem Hin und Her bin ich bei diesem Beitrag gelandet, der eine sehr gute Grundlage dafür bietet. Ich habe den Code etwas besser aufbereitet und nachfolgend eingefügt.
Was mir noch fehlt: Mit dem Code kann ich das gewünschte Kontextmenü anzeigen und manuell auf den Menüpunkt klicken, aber eigentlich...