Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#2

Re: TRegistry, Aktuellen Pfad speichern...

  Alt 4. Mai 2004, 07:41
Du importierst folgenden API-Call zusätzlich zur Unit Registry:
Delphi-Quellcode:
type
   // this function maps a predefined key to the argument; used for chrooting a key
   // to a new hive in the registry. this only affects the calling process!
   function RegOverridePredefKey(a_hKey: HKEY;         // predefined key [HIVE]         a_TargethKey: HKEY): Longint; stdcall;      // OPEN! key. all calls to HIVE will end up here

implementation
   function RegOverridePredefKey(a_hKey: HKEY; a_TargethKey: HKEY): Longint; external 'advapi32.dllname 'RegOverridePredefKey';
Du öffnest nun einmal den gewünschten Rootkey, und öffnest dann Deinen persönlichen Rootkey.
Danach wirfst Du beide HKEY - Werte in die RegOverridePredefKey rein.

JEDER folgende Aufruf von HKEY_LOCAL_MACHINE landet nun in Deinem persönlichen Rootkey.

Solltest Du dieses Mapping wieder zurückstellen wollen, rufst Du diese Funktion noch einmal mit dem Rootkey auf, und übergibst als Target-hKey einfach null bzw. 0, da HKEY ein Longint - Wert ist.

[msdn]ms-help://MS.MSDNQTR.2004APR.1033/sysinfo/base/regoverridepredefkey.htm[/msdn]
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat