Hallo!
Beim Anpassen einer App für Vista bin ich folgendem Problem "begegnet":
Will man auf die Registry unter LocalMachine nur lesen zugreifen, so mach ich das so:
Delphi-Quellcode:
with TRegIniFile.Create do
try
RootKey:=HKey_Local_Machine;
OpenKeyReadOnly('\Software\Test\');
Memo1.Lines.Add('Read = '+ReadString('', 'foo', ''));
finally
Free;
end;
(klappt auch mit eingeschränkten Benutzerrechten)
Will ich Lesen und schreiben (ich hab dem Pfad in der Registy modify-rechte für jeden eingeräumt) und nehme einfach statt "OpenKeyReadOnly" "OpenKey", dann schlägt das fehl. Und das scheinbar weil bei
Access auch KEY_CREATE_LINK dabei ist (wofür auch immer das sein mag)
Wie nun?
Access:=KEY_READ or KEY_WRITE;
oder
Access:=KEY_ALL_ACCESS and not KEY_CREATE_LINK;
(lustigerweise ergeben diese zwei zeilen nicht den selben wert)
oder ganz anders?
Danke,
Ralf