![]() |
Re: Eintrag in Context Menu
jetzt willste mich aber rollen oder ???
Das sehe ich in der Registry auch aber ich weiß nicht wie man den Schlüssel dort anlegt und was genau dort drinstehen muss... Man man man nu macht es doch nicht so schwer, Ihr wisst doch offensichtlich wie es geht was ist so schwer daran den Source rauszurücken ??? Ich sitze den ganzen Tag schon an dem Mist und komm nicht weiter... |
Re: Eintrag in Context Menu
ok ich habs... danke trotzdem für eure hilfe ...
für alle die es mal suchen:
Code:
procedure TForm1.addClick(Sender: TObject);
var Reg:TRegistry; begin reg:=tregistry.create(); Reg.RootKey:=HKEY_CLASSES_ROOT; -> Reg.OpenKey('*\shell',true); // wird das benötigt ??? -> Reg.CloseKey; Reg.OpenKey('*\shell\'+Name,true); Reg.WriteString('',Title);//optional Reg.CloseKey; Reg.OpenKey('*\shell\'+Name+'\command',true); Reg.WriteString('',Adress); // adress="c:\test\meinprogramm.exe %1" Reg.CloseKey; reg.free; end; 2 Fragen hab ich aber noch :) 1. die oben gezeigt stelle mit -> wird die benötigt ? 2. wie kann ich den eintrag wieder löschen ? |
Re: Eintrag in Context Menu
Immer mit der Ruhe. Ich wusste ja nicht, wo Dein Problem lag. Ich hatte vermutet, das die Regsitry zu nutzen nicht das Probem sei ;-)
1. Ist nicht nötig. 2. Den übergeordneten Reg-Pfad öffnen und mit DeleteKey den gewünschten Eintrag entfernen. ...:cat:... |
Re: Eintrag in Context Menu
ok das geht ...
Code:
ich wusste nicht mehr ob shell vorher da war oder nicht...
begin
reg:=tregistry.create(); Reg.RootKey:=HKEY_CLASSES_ROOT; Reg.DeleteKey('*\shell\'); reg.free; end; ok für einzelne datein funktioniert es jetzt aber wie kann ich es in der registry eintragen das ich auch ordner damit aufrufen kann ? |
Re: Eintrag in Context Menu
Du solltest nicht gerade den Shell Eintrag löschen, da auch andere Apps (WinZIP; ICQ, ...) dort registriert sind.
Betreffs der Folder kann ich leider momentan nicht helfen, aber bei MSDN wirst Du bestimmt den Tipp finden. ...:cat:... |
Re: Eintrag in Context Menu
hmm ich hab auf beiden pcs WIN XP und hab jetzt gearde ma auf meinem anderen rechner geschaut der hat den shell ordner dort auch nicht, da ist und war auf meinem PC auch nichts weiter drin ...
also den drin lassen oder wie ists am besten ? |
Re: Eintrag in Context Menu
Auf jeden Fall nur dann löschen, wenn nichts drinne ist. Bei mir sind 5 Einträge drin. Wäre schade, wenn die weg wären ;-)
...:cat:... |
Re: Eintrag in Context Menu
Zitat:
|
Re: Eintrag in Context Menu
ok ich habs so geändert:
Code:
begin
reg:=tregistry.create(); Reg.RootKey:=HKEY_CLASSES_ROOT; if Reg.OpenKey('*\shell',false) then begin Reg.DeleteKey(Name); Reg.CloseKey; end; reg.free; end; und gleich das nächste problem, wenn ich mehr als eine datei aufrufe sollen diese natürlich auch von meinem programm geööfnet werden paramstr(0) und paramstr(1) enthalten die daten mein programm startet aber bei 3 dateien dann 3x :( ??? es soll aber nur 1x starten und die anderen dateien ebanfalls bearbeiten... |
Re: Eintrag in Context Menu
neue FRage neuer Thread ;-)
PS: Such mal in der code-Library, da steht irgendwo wie man es hinbekommt, dass die Anwendung nur einmal gestartet werden kann, dann musst du halt noch eine Message an dein Programm schicken (also praktisch von deinem Programm, das wieder beendet wird, zu deinem Programm, was weiter laufen soll.., um die Dateien zu übergeben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:00 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