Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Registry-Folder auslesen (https://www.delphipraxis.net/105639-registry-folder-auslesen.html)

Counter909 26. Dez 2007 17:35


Registry-Folder auslesen
 
hi


ich möchte aus der Registry (zum beispiel das Verzeichnis "Run") auslesen und diese dann
in einer Memo-liste, list (ist egal) aufzeichnen.

doch bei mir kommt immer ein Lesefehler:

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
Reg:tregistry ;
keys:tstringlist ;

begin

   Reg := TRegistry.Create;
   reg.Rootkey:=HKEY_CURRENT_USER;
   if reg.OpenKey('Software\Microsoft\Windows\Run',true) then
   begin
   Reg.GetKeyNames(Keys);        //// hier schmiert er iwie ab
   keys.Add(memo1.Text);
   end;
      reg.Free

end;

aber i.wie komm ich da gerade nicht weiter :-(

weiß einer woran das liegen kann ?

Apollonius 26. Dez 2007 17:39

Re: Registry-Folder auslesen
 
Du musst die Stringliste erzeugen ( Keys := TStringlist.Create) bevor du Reg.GetKeyNames aufrufen kannst.

DeddyH 26. Dez 2007 17:40

Re: Registry-Folder auslesen
 
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
Reg:tregistry ;
keys:tstringlist ;

begin
   Reg := TRegistry.Create;
   keys := TStringList.Create;
   try
     reg.Rootkey:=HKEY_CURRENT_USER;
     if reg.OpenKey('Software\Microsoft\Windows\Run',true) then
       begin
         Reg.GetKeyNames(Keys);        //// hier schmiert er iwie ab
         keys.Add(memo1.Text);
       end;
     //hier noch irgendwas mit keys machen
   finally
     reg.Free;
     keys.Free;
  end;
end;

Counter909 26. Dez 2007 17:48

Re: Registry-Folder auslesen
 
was meinst du denn mit "//hier noch irgendwas mit keys machen "


eigentlich mach arbeite ich doch schon mit den, wenn ich sie in die liste hinzufüge oder ?



aber abstürzen tut er schonmal nicht mehr :mrgreen: danke

DeddyH 26. Dez 2007 18:00

Re: Registry-Folder auslesen
 
Ich meinte, dass es wenig Sinn macht, ein Objekt zu erzeugen, zu befüllen und dann gleich wieder freizugeben. Irgendwo sollte der Inhalt schon abgelegt werden ;).

Counter909 26. Dez 2007 18:04

Re: Registry-Folder auslesen
 
hmmmmm


naja mein Ziel ist es ja .. in dieser Liste einmal die Keys aufgelistet zu bekommen!
und eigentlich dachte ich auch dass ich es hiermit:

Delphi-Quellcode:
begin
   Reg.GetKeyNames(Keys);
   keys.Add(memo1.Text);
   end;
auch hinbekomme... :gruebel: und da tue ich dann doch auch was mit den keys und können danach wieder leer gemacht werden ^^ Oder was versteh ich da jetzt nicht ganz ? :spin2:

DeddyH 26. Dez 2007 18:05

Re: Registry-Folder auslesen
 
Du liest die Schlüssel in die Liste und hängst anschließend noch den Inhalt Deines Memos an. Bist Du Dir sicher, dass das so beabsichtigt ist?

Counter909 26. Dez 2007 18:19

Re: Registry-Folder auslesen
 
ne das war nicht beabsichtigt :wall:

ich wollt ja die keys IN die memo/listbox einfügen :angel:

DeddyH 26. Dez 2007 18:32

Re: Registry-Folder auslesen
 
Dann mach es doch mit
Delphi-Quellcode:
Reg.GetKeyNames(Memo1.Lines);
Das spart auch die StringListe ein.

Counter909 26. Dez 2007 18:51

Re: Registry-Folder auslesen
 
ah ok....das war gar nicht der einzige Fehler...



problem ist i.wie dass die einzelnen Keys im Ordner "Run" gar nicht angezeigt werden können.
es werden nur die Ordner angezeigt ! also nicht die wirklichen keys.

woran liegt das denn ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz