Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Registry, Standartwert auslesen (https://www.delphipraxis.net/14660-registry-standartwert-auslesen.html)

Pseudemys Nelsoni 13. Jan 2004 15:09


Registry, Standartwert auslesen
 
hoi,

also bei folgendem bekomme ich nur ca 12 leere items in mein listview, in den regeinträgen steht aber 100% überall was drin:

Delphi-Quellcode:
procedure TForm5.FormShow(Sender: TObject);
var
  reg: TRegistry;
  sl: tstringlist;
  i: integer;
  ListItem: TListItem;
begin
  reg := TRegistry.Create;
  sl := TStringlist.Create;
  with reg do
  begin
    RootKey := HKEY_CLASSES_ROOT;
    OpenKey('Wchat', false);
    GetKeyNames(sl);
    for i := 0 to sl.Count-1 do
    begin
      if Pos('Nick', sl[i]) > 0 then
      begin
        OpenKey('Wchat\' + sl[i] + '\Nick', false);
        ListItem := Listview1.Items.Add;
        ListItem.Caption := ReadString('Standard');
        OpenKey('Wchat\' + sl[i] + '\Pass', false);
        ListItem.SubItems.Text := ReadString('Standard');
      end;
    end;
    CloseKey;
    Free;
  end;
  sl.Free;
end;

weiss jemand was falsch ist?

mfg

Luckie 13. Jan 2004 15:12

Re: Registry, Standartwert auslesen
 
Übergib mal bei ReadString einen Leerstring.

Pseudemys Nelsoni 13. Jan 2004 15:20

Re: Registry, Standartwert auslesen
 
hallo luckie,

das mit dem leerstring hab ich zuerst versucht, dann hab ich die suche benutzt und irgendwo "'Standard'" gelesen, beides liefert mir aber leere strings

sakura 13. Jan 2004 15:30

Re: Registry, Standartwert auslesen
 
Es ist, wie in der DP schon oft geschrieben
Delphi-Quellcode:
StandardWert := Registry.ReadString('');
...:cat:...

Pseudemys Nelsoni 13. Jan 2004 15:37

Re: Registry, Standartwert auslesen
 
hi

"das mit dem leerstring hab ich zuerst versucht, dann hab ich die suche benutzt und irgendwo "'Standard'" gelesen, beides liefert mir aber leere strings"


darf man "openkey" überhaupt öfters ausführen?

Luckie 13. Jan 2004 15:41

Re: Registry, Standartwert auslesen
 
Durch wiederhoplen deiner Aussage wird es auchnicht einfacher dir zu helfen. Sthet denn überhaupt etwa sim Standardwert drin?

Pseudemys Nelsoni 13. Jan 2004 15:48

Re: Registry, Standartwert auslesen
 
Liste der Anhänge anzeigen (Anzahl: 1)
jo, aber sakura hatte ja den code gepostet (der normal bei meinen anderen projekten funktioniert) wo ich zuvor schon beschrieben hatte, das es nicht ging, naja bin bisschen müde und muss bald ins bett, kommt vielleicht daher =].

also die Keys sind auf jeden fall nicht leer, siehe anhang

sakura 13. Jan 2004 15:51

Re: Registry, Standartwert auslesen
 
Zitat:

Zitat von Pseudemys Nelsoni
darf man "openkey" überhaupt öfters ausführen?

Nein ;-) Aber das war nicht Deine Frage und da die Frage einfach war, habe ich die direkt UND korrekt beantwortet.

Dein Code ist komplett unbrauchbar.

Delphi-Quellcode:
procedure TForm5.FormShow(Sender: TObject);
var
  reg: TRegistry;
  sl: tstringlist;
  i: integer;
  ListItem: TListItem;
begin
  reg := TRegistry.Create;
  sl := TStringlist.Create;
  with reg do
  try
    sl.Clear;
    RootKey := HKEY_CLASSES_ROOT;
    if OpenKey('Wchat', false) then
    try
      GetKeyNames(sl);
    finally
      CloseKey;
    end;
    for i := 0 to sl.Count-1 do
    begin
      if Pos('nick', LowerCase(sl[i])) > 0 then
      begin
        if OpenKey('Wchat\' + sl[i] + '\Nick', false) then
        try
          ListItem := Listview1.Items.Add;
          ListItem.Caption := ReadString('');
        finally
          CloseKey;
        end;
        if OpenKey('Wchat\' + sl[i] + '\Pass', false) then
        try
          ListItem.SubItems.Text := ReadString('');
        finally
          CloseKey;
        end;
      end;
    end;
  finally
    reg.Free;
    sl.Free;
  end;
end;
...:cat:...

Pseudemys Nelsoni 13. Jan 2004 16:04

Re: Registry, Standartwert auslesen
 
super, das klappt, danke =]]


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz