Entwickler-Ecke

WinForms - Registry Schlüssel wird nicht geschrieben


Fakiz - Mo 03.09.12 19:10
Titel: Registry Schlüssel wird nicht geschrieben
Guten Abend,

ich versuche nun schon seit längerer Zeit einen Registrierungsschlüßel unter "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell" zu schreiben. Allerdings schaffe ich es nicht, und wäre uber einen Denkanstoß sehr dankbar.

So versuche ich den Schlüßel zu schreiben.

Quelltext
1:
RegistryKey regkey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell", true).CreateSubKey("TestMenu");                    


Moderiert von user profile iconTh69: Titel korrigiert: Schlüßel -> Schlüssel


Delphi-Laie - Mo 03.09.12 19:16

user profile iconFakiz hat folgendes geschrieben Zum zitierten Posting springen:
Guten Abend,

ich versuche nun schon seit längerer Zeit einen Registrierungsschlüßel unter "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell" zu schreiben. Allerdings schaffe ich es nicht, und wäre uber einen Denkanstoß sehr dankbar.

So versuche ich den Schlüßel zu schreiben.

Quelltext
1:
RegistryKey regkey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell", true).CreateSubKey("TestMenu");                    


Tja, wenn nirgendwo ein "write" auftaucht, wie soll dann in einen "Schlüßel" (auweia) geschrieben werden?

Edit: Lesen macht schlauer:

http://www.kuknet.de/tutorial2.pdf
oder
http://www.delphi-treff.de/tutorials/vcl/registry/einleitung/


Ralf Jansen - Mo 03.09.12 19:28

Was passiert denn? a.) Es knallt, b.) du findest den Key nachher nicht in der Registry?

Wenn a.) dann bedenke in dem Bereich darf man nur als Admin mit UAC Bestätigung schreiben. Das darf nicht einfach irgendein User.
Wenn b.) dann rate ich mal das dir das in einer 32bit Anwendung auf einem 64Bit OS passiert. Such mal unterhalb des Wow6432Node Keys. Deine Ordner ist einfach nur weg virtualisiert worden.
Wenn irgendein c.) dann solltest du deutlich mehr über das Verhalten erzählen als ein plattes 'geht nicht'.

@Delphi-Laie: Auch wenn das Prinzip das gleiche ist werden Delphi Links in C# nur bedingt helfen.


Fakiz - Mo 03.09.12 22:58

Der Tipp mit x64 und x86 wars, ich danke dir vielmals.