![]() |
Eintrag ins Kontextmenü
Hi!
Ich habe vor Kurzem ein Verschlüsselungsprogramm geschrieben. Jetzt möchte ich es jedoch um eine Funktion erweitern: Wenn ich die zu ver-/entschlüsselnde Datei in Windows mit der rechten Maustaste öffne, soll in dem dann erscheinenden Kontextmenü ein neuer Eintrag erscheinen, um die Datei direkt mit meinem Verschlüsselungsprogramm zu öffnen. |
Re: Eintrag ins Kontextmenü
bemüh mal die Suche [dp]kontextmenü erweitern[/dp]. Das hatten wir schon zu genüge.
|
Re: Eintrag ins Kontextmenü
Ich habe zwar jetzt einen neuen Eintrag im Kontextmenü, jedoch wird nur das Verschlüsselungsprogramm geöffnet und die Datei(en) nicht in die Listbox eingefügt. Wie kann ich das ändern?
|
Re: Eintrag ins Kontextmenü
Auch dazu solltest du hier im Forum eine Lösung finden.
Wenn du schon Code hast, dann wäre es auch interessant den mal zu sehen. |
Re: Eintrag ins Kontextmenü
Mein Code für den Eintrag ins Kontextmenü:
Code:
procedure TForm1.Button1Click(Sender: TObject);
var regist:Tregistry; begin regist:= TRegistry.Create; regist.RootKey := HKEY_CLASSES_ROOT; regist.OpenKey('*',True); regist.WriteString('','Mit Krypto verschlüsseln'); regist.CloseKey; regist.OpenKey('Mit Krypto verschlüsseln',True); regist.WriteString('','Mit Krypto verschlüsseln'); regist.CloseKey; regist.OpenKey('*\shell\Mit Krypto verschlüsseln\command',True); regist.WriteString('','C:\Krypto.exe %1'); regist.CloseKey; end; |
Re: Eintrag ins Kontextmenü
Hi DelphiFreak!
Es ist wahrscheinlich, dass dein Programm die Parameter nicht auswertet. Such dazu mal nach [oh]ParamCount, ParamStr[/oh]. Greetz alcaeus |
Re: Eintrag ins Kontextmenü
Ok, habe es geschaft die Parameter zu übertragen. Jetzt habe ich nur noch ein kleines Problem. Ich kann zwar mehrere Dateien mittels Parameterübergabe übertragen, jedoch wird das Verschlüsselungsprogramm für jeden Parameter neu geöffnet. Wahrscheinlich genügt es nicht, wenn man verhindert, dass das Programm mehrfach geöffnet werden kann. Welche Möglichkeiten gibt es dieses Probelmm schnell zu beheben?
|
Re: Eintrag ins Kontextmenü
Du musst verhindern, dass sich dein Programm mehrmals öffnet, aber bevor du die weitere Instanz beendest, muss sie die Daten, am bseten mit
![]() ![]() |
Re: Eintrag ins Kontextmenü
|
Re: Eintrag ins Kontextmenü
Wahrscheinlich ist es die schnellste Methode mit diesen Dateien (OneInstance.pas und OneInstace.dcr) zu arbeiten. Jedoch komme ich auch damit nicht richtig zurecht. Kann mir deshalb jemand erklären, wie ich es richtig anwenden kann?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 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