![]() |
Registry - KeyExists liefert immer false
Hallo,
ich verzweifle gerade an der Registry. Ich benutze folgenden Code, um auszulegen, ob ein Eintrag existiert:
Delphi-Quellcode:
Das Teil liefert aber immer false (bzw. als Ausgabe "Gibts nicht"). Ich habe jetzt mal einen WriteString mit reingebaut und es ist immernoch so.
reg := TRegistry.Create;
try reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('Software\Microsoft\Windows NT\CurrentVersion\Winlogon', true); reg.WriteString('testen','jo'); if reg.KeyExists('testen') then begin Edit1.Text := 'Gibts'; end else begin Edit1.Text := 'Gibts nicht'; end; finally reg.free; end; Wenn ich per Regedit schaue wird der Key aber erstellt und existiert dann auch. Ich finde den Fehler ehrlich gesagt nicht...vllt. könnt ihr mir ja weiterhelfen. PS: Nutze Delphi 7 PE |
Re: Registry - KeyExists liefert immer false
Existiert der Schlüssel denn dann? Schreiben tust du einen Wert, das wäre dann ValueExists.
Warum wirfst du das Ergebnis von OpenKey einfach weg? |
Re: Registry - KeyExists liefert immer false
Autsch! Alles klar...KeyExists und ValueExists verwechselt :wall:
Bin schon ruhig :mrgreen: Danke! |
Re: Registry - KeyExists liefert immer false
Wie gesagt solltest du aber auch den Wert von OpenKey verwenden:
Delphi-Quellcode:
So in der Art. ;-)
if OpenKey(...) then
begin end else ShowMessage('Schlüssel konnte nicht geöffnet werden!'); |
Re: Registry - KeyExists liefert immer false
Zitat:
[add] @jaenicke: ups, den entsprechende Satzteil hab ich ganz übersehn :oops: |
Re: Registry - KeyExists liefert immer false
Zitat:
Jetzt bin ich ja nur noch einmal auf den Rückgabewert von OpenKey eingegangen. ;-) |
Re: Registry - KeyExists liefert immer false
Die Rückgabe vom OpenKey ist mir recht egal, denn sollte der Key nicht existieren, ist das Windows hinne :)
|
Re: Registry - KeyExists liefert immer false
Dass du den Schlüssel erstellst, wenn er nicht existiert, ist klar, das hast du ja so programmiert.
Du forderst für dein Programm also immer Administratorrechte an? Weil nur dann kannst du einigermaßen sicher sein, dass du Zugriff auf den Schlüssel hast. ;-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz