Schlüssel in Registrierung schreiben (C#)

Gast #2326585
Lesenswert?
• ▲
▼
Hallo
Ich möchte in der Registry einen neuen Schlüssel erzeugen mit:

RegistryKey ItemKey = Registry.LocalMachine.CreateSubKey 
(@"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\CommandStore\ 
\shell\\"+  name);
 ItemKey.SetValue("Standart", name);

Leider passiert genau nichts. Der neue Key und Wert wird nicht erstellt 
und Fehlermeldung bekomme ich auch keine...

Andere Schlüssel kann ich aber erzeugen. zB:
RegistryKey MenuKey = 
Registry.LocalMachine.CreateSubKey(@"Software\\Classes\\DesktopBackgroun 
d\\Shell\\"  + MenuName);

Funktioniert einwandfrei! Warum wird aber der obere nicht erstellt? Das 
Programm startet mit Adminrechten. Habe ich etwas übersehen?

Vielen Dank im vorraus!
Gast #2326591
Lesenswert?
• ▲
▼
bei C# verwendet man etweder @ oder \\ aber doch nicht beides? Wenn man 
@ verwendet dann reicht ein \.

könnte es sein das STandard mit d geschriebn wird?

ItemKey.SetValue("Standart", name);

auserdem heist diese eintrag nicht so, aus dem Grund steht er auch in 
(). Den muss man anders setzen.
Gast #2326632
Lesenswert?
• ▲
▼
okey wieder etwas dazugelernt! Danke!
Leider ist das Problem wegen des nicht erzeugens des Schlüssels 
immernoch vorhanden. Der Zweite Key wird einfach nicht erstellt....

Interessanterweise funktioniert es, wenn ich es nicht in LocalMachine 
schreibe/speichere, sondern CurrentUser. Also ist codetechnisch alles 
funktionsfähig.
Ich vermute, das es an mangelnder Rechte liegen könnte. Das Programm 
startet jedoch schon als Admin -> was könnte ich noch ausprobiern??

Edit:
mit @ und \\ zusammen funktioniert es auch :P
Gast #2326639
Lesenswert?
• ▲
▼
ein Rechte Problem kann es eignetlich nicht sein, sonst würdes du eine 
Exception bekommen, ich kann mir noch ein 32/64bit Problem vorstellen. 
Die Registry ist für 32bit Programm teilweise eine andere wie für 64bit 
Programm. Da wird jeweil ein anderer Zweig geladen.
Gast #3650241
Lesenswert?
• ▲
▼
Ich habe das Problem das er es nicht in Software\Microsoft schreibt 
sondern in Software\Wow6432Node\Microsoft geschrieben.

Hast Du Dein Problem gelöst? Wäre nett wenn Du einen codeschnipsel 
posten könntest

Gruß

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.