Entwickler-Ecke

Sonstiges (Delphi) - RegEdit in einem bestimmten Key öffnen


Moritz M. - Sa 01.03.03 13:15
Titel: RegEdit in einem bestimmten Key öffnen
Hi

Das ganze geht nicht über Parameter, sondern über einen Wert in der Registry, in dem der letzte geöffnete Schlüssel gespeichert ist. Wenn man diesen Wert auf den benötigten Fälscht, kann man RegEdit in einem bestimmten Key öffnen.

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
uses Registry,ShellAPI;

...

procedure OpenRegEditInKey(key: string);
var reg:Tregistry;
begin
  reg:=TRegistry.create;
  reg.RootKey:=HKEY_CURRENT_USER;
  try
    reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Applets\Regedit',false);
    reg.WriteString('LastKey',key);
  finally
    reg.free;
  end;
  ShellExecute(Application.handle,'open','regedit.exe','','',SW_MAXIMIZE);
end;


So, das ist die Prozedur um RegEdit in einem bestimmten Key zu öffnen. Ihr könnt die hier gleich verwenden oder auch so umbasteln, wie ihr sie braucht.
Ein Beispiel zum aufrufen der Prozedur:

Quelltext
1:
OpenRegEditInKey('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run');                    

Der String Key muss also zuerst den RootKey und dann den zu öffnenden key enthalten.