Einzelnen Beitrag anzeigen

ephedrine

Registriert seit: 9. Okt 2009
2 Beiträge
 
#1

RegistryKey auf Existenz prüfen funktioniert nicht (Konsole)

  Alt 9. Okt 2009, 17:42
Hallo,

ich wollte heute ein wenig für den Informatikunterricht üben, und hab mich mal mit Registry-Einträgen beschäftigt.
Seit einigen Stunden google ich quer durchs Netz und finde keine Antwort auf mein Problem:

Ich möchte in meiner Konsolenanwendung einen Registry-Schlüssel auf Existenzprüfen, und wenn er nicht existiert, ihn dann anlegen. Ich weiß, dass man ihn auch einfach so anlegen könnte (denn wenn er existiert, wird er ja nicht überschrieben), aber es geht um's Prinzip, da ich das für ein späteres Programm benötige.

Leider werden alle Befehle nach der Überprüfung ignoriert

Delphi-Quellcode:
if Regist.KeyExists('Software\Test\') = true then
 begin
  WriteLn('Eintrag existiert');
  sleep(4000);
 end
  else
   try
     regist.OpenKey('Software\Test\', true);
     regist.WriteInteger('Test1', c);
     regist.WriteInteger('Test2', d);
   finally
    regist.free;
     WriteLn('Eintrag angelegt');
     sleep(4000);
Wenn ich das Programm jetzt starte, beendet es sich einfach wieder. Der Sleep-Befehl wird völlig ignoriert. Der Eintrag in der Registry wird auch nicht angelegt. Nehme ich die Überprüfung "if Regist.KeyExists" raus, wird der Key jedoch zumindest angelegt. Also nehme ich mal an, dass das Programm ab der Überprüfung alle Befehle ignoriert.
Was habe ich übersehen?

Viele Grüße
Fabian
  Mit Zitat antworten Zitat