Schönen guten Abend,
folgendes Problem:
Ich möchte aus einem Thread in die Registry schreiben, bei der Ausführung kommt immer dieser Fehler.
Fehlermeldung:
System.UnauthorizedAccessException was unhandled
Message=Cannot write to the registry key.
Das einlesen geht tadellos und wenn ich in die Registry aus dem Gui-Thread heraus schreibe, funktioniert alles soweit gut. Wie kann ich diesen Fehler beseitigen?
Vielen Dank
Bansi
Hallo Bansi,
mich wundert, dass es aus dem GUI-Thread heraus gehen soll. Bist du dir wirklich sicher, dass du in beiden Fällen genau das gleiche unter auch ansonsten gleichen Umständen probierst?
Wenn es in beiden Fällen nicht geht, würde ich sagen, dass dir oder deiner Anwendung einfach die nötigen Rechte (z.B. Adminrechte) fehlen. Du solltest die Anwendung als Admin starten.
Zugriffs-/Rechteprobleme im Zusammenhang mir Registry wurde schon oft besprochen. Bitte benutze die Forumssuche und poste die besten Treffer hier. Vielen Dank! (Siehe auch Wird die Bitte, die besten Treffer aus der Forensuche zu posten, ausreichend ernst genommen?)
herbivore
Möglicherweise benutzt du die OpenSubKey-Methode ohne den zweiten Parameter anzugeben. Der sollte bei dir den Wert true enthalten.
siehe OpenSubkey
Hallo,
ich hab mal ein komplett neues Projekt erstellt um die ganze Sache schrittweise noch einmal durchzugehen und konnte das Problem feststellen.
Mein Fehler war das ich für dem neuen Thread eine neue Instanz von Registry erstellt habe, ohne die nötigen Schreibrechte zugeben
newKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\Bansi\RegistryTest", RegistryKeyPermissionCheck.ReadWriteSubTree);
Näheres wird hier erklärt:
UnauthorizedAccessException beim Registry-Schreiben
Vielen Dank