![]() |
Re: TListView Problem
Wie kann man denn eine Schleife durch eine Verzweigung ersetzen?
|
Re: TListView Problem
Jupp, die Case-Of-Anweisung ist keine Schleife. Dort wird nichts wiederholt ausgeführt.
Das folgende Beispiel zeigt mal einen Ansatz, macht aber noch nicht ganz das, was du haben möchtest (selber groß ;) ). Das Beispiel ist dazu da, damit du siehst, wie man mit der Registry arbeitet. Die Try-Finally-Blöcke sind wichtig. Falls Fehler dazwischen auftreten, wird der Speicher für die Objekte dennoch freigegeben. Auch zeigt das Beispiel, wie man lesend auf die Registry zugreift (dir reicht der lesende Zugriff). Mit eingeschränkten Benutzerrechten bleibt deine ListView sonst immer leer (soeben getestet)!
Delphi-Quellcode:
Grüße, Matze
Reg:= TRegistry.Create;
try Keys := TStringList.Create; try Reg.RootKey:= HKEY_LOCAL_MACHINE; if Reg.OpenKeyReadOnly('SOFTWARE\Microsoft\Windows\CurrentVersion\Run') then begin Reg.GetValueNames(Keys); for i := 0 to Keys.Count - 1 do begin lItem := ListView1.Items.Add; lItem.Caption := Keys[i]; end; Reg.CloseKey; end; finally Keys.Free; end; finally Reg.Free; end; Edit: Wir haben "CloseKey" bisher ganz unterschlagen. |
Re: TListView Problem
Dann will ich auch noch mal:
Delphi-Quellcode:
uses
Registry; procedure TForm2.Button1Click(Sender: TObject); var Keys: TStringList; Reg: TRegistry; i: Integer; li: TListItem; begin Reg := TRegistry.Create(KEY_READ); Keys := TStringList.Create; try try Reg.RootKey := HKEY_LOCAL_MACHINE; if Reg.OpenKey('SOFTWARE\Microsoft\Microsoft Antimalware', False) then begin Reg.GetKeyNames(Keys); for i := 0 to Keys.Count - 1 do begin li := ListView1.Items.Add; li.Caption := Keys.Strings[i]; end; end else raise Exception.Create('Schlüssel konnte nmicht geöffnet werden'); except on E: Exception do ShowMessage(E.Message); end; finally Reg.Free; Keys.Free; end; end; |
Re: TListView Problem
Die sehen beide gut aus, und ich hab es auch beides ausprobiert. Es gibt auch keine Errormeldung bis auf die Tatsache, dass ich einfach keine Ausgabe in der ListView bekomme.....
Oder hab ich wieder was leichtes übersehen? |
Re: TListView Problem
Hat dein Listview auch mindestens eine Spalte und steht der ViewStyle auf vsReport?
|
Re: TListView Problem
Jap
|
Re: TListView Problem
Wie "Jap"? Funktioniert es jetzt?
|
Re: TListView Problem
Vermutlich nicht. Er hat die ListView so eingestellt, wie du es gefragt hast:
Zitat:
Zitat:
|
Re: TListView Problem
Dann kann ich auch nicht weiterhelfen ohne mehr Informationen.
|
Re: TListView Problem
Ich auch nicht. Mein Beispiel funktioniert bei mir definitiv. Deines sieht sehr ähnlich aus und sollte auch klappen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 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