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.dll' name '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]