Hallo,
leider habe ich bisher keine Lösung für mein Problem finden können.
Den Zugriff auf die Registry kann man ja wirklich noch umgehen, indem man "unprofessioneller Weise" den eingeschränkten Nutzernamen abspeichert und dann als Admin ausliest. Somit erhält man den richtigen SID für den HKEY_USERS Registryzweig.
Problematischer ist es da schon, wenn man auf Standardpfade zugreifen will:
Delphi-Quellcode:
try
SetLength(lPath, MAX_PATH);
if SHGetSpecialFolderPath(0, @lPath[1], CSIDL_APPDATA, False) then
begin
SetLength(lPath, pos(#0, lPath) - 1);
Result := lpath;
end;
except
// ...
end;
Hier erhält man wirklich nur die Pfade des Adminkontos statt des eingeschränkten Kontos! Oder kann man dies irgendwie korrigieren?