Zusammenfassung:mit RegistryKey.OpenRemoteBaseKey Methode richtig C#
Ich brauche RegistryKey.OpenRemoteBaseKey verwenden Remote-Registrierung von HKEY_USERS
Voll Erklären Sie abfragen:
ich derzeit versuche Register auf entfernten Rechnern abfragen . Mein Code der RegistryKey.OpenRemoteBaseKey-Methode ist unten. Ich weiß, dass die "environmentKey = RegistryKey.OpenRemoteBaseKey (RegistryHive.CurrentUser, remoteName) .OpenSubKey (" Umgebung ");" Zeile aus dem ursprünglichen Beispiel um registrykey.openremotebasekey funktioniert. Allerdings muss ich HKEY_USERS abfragen, die die Anweisung zu RegistryKey ändern würde environmentKey = RegistryKey.OpenRemoteBaseKey (RegistryHive.Users, remoteName); und diese Zeile funktioniert nicht.
Jede Hilfe oder Code-Beispiele würden sehr geschätzt werden! Ich muss nur die Registrierungseinträge HKEY_USERS auf einem Remote-System abfragen. Jede Methode funktioniert für mich, mein Code unten ist nur, weil es die beste Methode ist, die ich bis jetzt gefunden habe, um zu bekommen, was ich will/brauche. Ich bin offen für Veränderungen :)
versuchen {
// Öffnen HKEY_CURRENT_USER \ Environment // auf einem entfernten Computer.
string remoteName = host;
RegistryKey environmentKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.Users, remoteName);
foreach (string valueName in environmentKey.GetValueNames())
{
string regy = (valueName + environmentKey.GetValue(valueName).ToString());
Output.AppendText(regy + "\n");
}
// Close the registry key.
environmentKey.Close();
}
catch
{
}
haben Sie eine Ausnahme erhalten? Gibt es etwas mehr, das du uns geben kannst als "es funktioniert nicht"? – Bryan
@Brian: Das Problem war, dass der ursprüngliche Code so viele Fehler geworfen hat, dass ID mein eigenes Forum braucht, um sie alle zu veröffentlichen haha :) Es sieht so aus, als ob ich das Problem gelöst hätte. Bitte schauen Sie sich meinen Lösungscode unten an und zögern Sie nicht, einen Kommentar abzugeben. Vielen Dank – toosweetnitemare
Nur überprüfen - Sie wissen, dass HKEY_USERS nur Informationen für Benutzer enthält, die derzeit angemeldet sind (auf dem Remote-Computer), nicht wahr? –