Identitätswechsel, um Benutzer HKEY_CURRENT_USER zu erhalten, funktioniert nicht?
Ich versuche, die Identität eines Administratorkontos eines LocalSystem-Dienstes anzunehmen, um Daten aus der HKEY CURRENT USER-Registrierung des Administrators abzurufen. Um die Identität anzunehmen, verwende ich den Code des Code-Projekts, der auf der folgenden von Uwe Keim geschriebenen Site zu finden ist:Imitator
Mein Quellcode ist wie folgt:
using (new Impersonator("user", ".", "pass"))
{
RegistryKey rk = Registry.CurrentUser.OpenSubKey("Software\\CompanyName");
string sValue = rk.GetValue("Value", "").ToString();
rk2.Close();
}
Meine Erwartung war, dass sValue vom Benutzer- / Pass-Konto stammt (wie ich es imitiere), aber seltsamerweise ist es immer noch der sValue vom LocalSystem-Konto, auf dem mein Dienst ausgeführt wird ...
Irgendwelche Hinweise, was ich falsch mache? Jede Hilfe wäre sehr dankbar. Vielen Dank,