Witam, mam problem z odczytem wartości z rejestru systemowego.
Mogę zapisywać/usuwać klucze w rejestrze(win7 64bit), ale nie mogę odczytywać. Uruchamiałem program także jako admin.
oto moje próby, próbowałem różnie stąd komentarze do kodu:
const
REGKEY = '\Software\Microsoft\Windows\CurrentVersion\Run';
var
Registry: TRegistry;
begin
Result := False;
// Registry := TRegistry.Create(KEY_READ or $0100);
Registry := TRegistry.Create(KEY_READ);
try
Registry.RootKey := HKEY_CURRENT_USER;
if Registry.OpenKeyReadOnly(REGKEY) then
// if Registry.OpenKey(REGKEY, False) then
begin
// Registry.Access := KEY_READ; // or KEY_WOW64_64KEY;
Result := Registry.ValueExists(AppName);
ShowMessage(Registry.ReadString(AppName));
// Result := Registry.KeyExists(AppName);
end;
finally
Registry.Free;
end;
end;
Pytanie brzmi jak odczytać coś z rejestru na tych nowszych systemach :)