Thema: Delphi TRegistry.KeyExists

Einzelnen Beitrag anzeigen

TopDogg

Registriert seit: 28. Jun 2002
51 Beiträge
 
#1

TRegistry.KeyExists

  Alt 28. Sep 2003, 00:59
h!,
folgende Source

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  reg: TRegistry;
begin
  reg := TRegistry.Create;
  reg.RootKey := HKEY_CURRENT_USER;
  reg.OpenKey('Software\KT', TRUE); // wird hier gemacht
  if reg.KeyExists('Key') = TRUE then // gibt es noch nich, also Result = FALSE -->|
    Edit1.Text := reg.ReadString('Key') // lies ihn raus. sollte beim ersten mal übersprungen werden |
  else // |
    begin // |
    reg.WriteString('Key', 'topdogg'); // schreib ihn rein <--|
    Edit1.Text := reg.ReadString('Key'); // lies ihn raus
    end;
  reg.Free;
end;
Klapt toll beim ersten mal.
Key existiert nicht und daher steht dan in EditFeld auch 'topdogg'.
Wenn ich den wert dann mit Regedit(oder mit was anderem) ändere, in z.B. '123blabla', und wieder auf dem Button drücke, steht wieder im EditFeld 'topdogg' anstat von '123blabla'. Sollte meiner Meinung nach nich passieren.

Verstanden???
Wen nicht, dann hier das problem.
Mein prog soll in die Registry beim allerersten Start ein String(ein Password) reinschreiben.
Beim zweiten und weiteren Starts soll er den String, also das Password nur lesen, nicht ändern, da ich das Password später manual ändern will.

Wer mich immer noch nicht versteht(nehm ich nicht übel, tu ich sebls manchaml nicht ), der erklärt mir bitte nur KeyExists func. Wann sie TRUE und wann sie FALS gibt.

ThnX

[edit=sakura]Überschrift angepasst! Mfg, sakura[/edit]
  Mit Zitat antworten Zitat