Laden...

Registry-Zugriff unter Windows-Vista

Erstellt von partyboy vor 17 Jahren Letzter Beitrag vor 17 Jahren 4.164 Views
P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren
Registry-Zugriff unter Windows-Vista

Hi,

hat schomal jemand von Euch unter Windows Vista auf die Registry zugegriffen (lesen/schreiben)?

Folgendermaßen schreibe ich in die Registry:


            RegistryKey rkHKLM = Registry.CurrentUser;
            RegistryKey rkRun = rkHKLM.OpenSubKey(@"Software\Microsoft\DWM", true);
            if (rkRun == null)
            {
                rkRun = Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\DWM");
            }
            rkRun.SetValue("test", 1);
            rkRun.Close();
            rkHKLM.Close();

Unter Windows Xp gibts keinerlei Probleme und unter Windows Vista auch nicht, solange ich mein Programm aus der Entwicklungsumgebung starte.

Wenn ich aber die kompilierte exe starte und die Funktion ausführe, bekekomme ich immer die Fehlermeldung "stopped working" von Windows.

Kennt jemand das Verhalten und weiß Abhilfe?

partyboy

3.728 Beiträge seit 2005
vor 17 Jahren
Berechtigungen

Vielleicht räumt die Entwicklungsumgebung spezielle Rechte ein. Bei Vista werden alle Programme standardmäßig nicht mit Admin-Privilegien ausgeführt. Normale Benutzer dürfen nicht in HKEY_LOCAL_MACHINE schreiben.

P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren

Hi,

das hab ich mir auch schon gedacht, aber ich schreibe nicht in localmachine. Wenn ich es wollte, würde Windows sicherlich diesen "Das Programm xyz will..."-Dialog bringen.

Man, das nervt echt. Wäre super, wenn jemand ne Lösung für das Problem hat.

edit: Es hilft auch nicht, wenn ich mein Programm als Administrator ausführe, mittels rechte Maustaste aufs Programm-Icons "Als Adminstrator ausführen".

partyboy

P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren

arg, hilfe. Wenn ich nicht bald eine Lösung für dieses Problem habe, werde ich von meinem Chef ausgepeitscht. X(

_
227 Beiträge seit 2006
vor 17 Jahren

Würde ja vorschlagen, etwas anderes als die Registry zu benutzen. Xml Dateien z.b.

P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren

Hi,

das geht leider nicht, ich muss registry-Einstellungen eines Programmes ändern.

partyboy

6.862 Beiträge seit 2003
vor 17 Jahren

Was meinst du eigentlich mit Stopped Working? Wo wird denn die Meldung ausgegeben? Weil das ist ja keine Exception oder sonstige Fehlermeldung die vom Programm kommt oder?

Baka wa shinanakya naoranai.

Mein XING Profil.

N
4.644 Beiträge seit 2004
vor 17 Jahren

Hab Dein Code mal ausgeführt. Funktioniert problemlos, auch wenn ich die exe starte ( angemeldet mit Adminrechten). Getestet in Vista RC1.

P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren

Sorry Leute, ich bin ein Depp X(

Eine andere Funktion hat das Problem ausgelöst, nicht die Regsitry-Schreib-Funktion.

Ich hab ein Testprogramm erstellt, das wirklich nur den Beispielcode ausführt, den ich gepostet hatte und jetzt gehts.

Danke Leute

S
8.746 Beiträge seit 2005
vor 17 Jahren

Original von partyboy
arg, hilfe. Wenn ich nicht bald eine Lösung für dieses Problem habe, werde ich von meinem Chef ausgepeitscht. X(

Ihr verdient doch nicht ernsthaft euer Geld damit, Vista-Desktop-Effekte ein- oder auszuschalten.... 😉

P
partyboy Themenstarter:in
109 Beiträge seit 2005
vor 17 Jahren

Nein, das war nur eine Lüge, um schneller an Antworten zu kommen 8o

1.433 Beiträge seit 2006
vor 17 Jahren

Ich denke dass die UAC von Windows Vista da einen Zugriffsversuch unterbindet. Die Entwicklungsumgebung, wenn Du sie als Admin startest, läuft dann auch in diesem Kontext.

Die kompilierte Exe wird dann ja im UserKontext ausgeführt. Soweit ich weiss müsste man dann Vista angeben dass dieser Process Deiner EXE als Admin läuft... 🤔

Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt