![]() |
Re: Ini auslesen und Checkbox auf True setzen?
Hast du denn ProxyStatus der Checkbox zugewiesen.
|
Re: Ini auslesen und Checkbox auf True setzen?
Zitat:
|
Re: Ini auslesen und Checkbox auf True setzen?
Ich sehe gerade bei mir ist der Code falsch:
Delphi-Quellcode:
Hier wird die die ini erstellt nur dann wenn sie schon vorhanden ist, wenn sie nicht vorhanden ist - geschieht nix. Hm.... :gruebel:
if FileExists(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini') then
begin Ini := TIniFile.Create(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini'); try ProxyStatus := Ini.ReadBool('Default', 'ProxyStatus', True); finally Ini.Free; end; Muss das vllt so heißen?? :gruebel:
Delphi-Quellcode:
if FileExists(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini') then
begin try ProxyStatus := Ini.ReadBool('Default', 'ProxyStatus', True); finally Ini.Free; end else Ini := TIniFile.Create(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini'); |
Re: Ini auslesen und Checkbox auf True setzen?
Es reicht das zu schreiben:
Delphi-Quellcode:
Wenn sie nicht existiert, wird sie angelegt, sonst geöffnet.
Ini := TIniFile.Create(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini');
Dein Code funktioniert so auch nicht, da du die Ini nirgendwo öffnest, wenn sie bereits existiert. Und unterlasse bitte die Doppelposts. |
Re: Ini auslesen und Checkbox auf True setzen?
Delphi-Quellcode:
Also, so funktinoert es bei mir wunderbar.
procedure TForm1.FormCreate(Sender: TObject);
var INi : TIniFile; ProxyStatus : Boolean; begin if FileExists('.\Config-t.ini') then begin Ini := TIniFile.Create('.\Config-t.ini'); try ProxyStatus := Ini.ReadBool('Default', 'ProxyStatus', True); finally Ini.Free; CheckBox1.Checked := ProxyStatus; end; Und so wäre ja auch möglich...
Delphi-Quellcode:
Gruß Jens
procedure TForm1.FormCreate(Sender: TObject);
var INi : TIniFile; begin if FileExists('.\Config-t.ini') then //Abbruch, wenn INI nicht existiert. Hierbei muss die CheckBox im OI gesetzt sein begin Ini := TIniFile.Create('.\Config-t.ini'); try CheckBox1.Checked := Ini.ReadBool('Default', 'ProxyStatus', True); finally Ini.Free; end; |
Re: Ini auslesen und Checkbox auf True setzen?
Zitat:
|
Re: Ini auslesen und Checkbox auf True setzen?
Habe ich einen Denkfehler oder wieso macht ihr das so kompliziert?
Reicht nicht das hier, ganz simpel:
Delphi-Quellcode:
Wenn die Ini-Datei nicht existiert, wird eine leere Ini angelegt (eine leere Ini-Datei wird meines Wissens auch nicht auf der Festplatte gespeichert). Dann ist kein Eintrag vorhanden und "ProxyStatus" erhält den Standardwert "true". Existiert die Ini-Datei, wird sie geöffnet. Dann erhält "ProxyStatus" den Wert, der in der Ini steht, falls der entsprechende Eintrag vorhanden ist. Andernfalls auch den Standardwert "true".
Ini := TIniFile.Create(UserAppDataDir + AppDataRootDir + AppDataProjectDir + '\Config-t.ini');
try ProxyStatus := Ini.ReadBool('Default', 'ProxyStatus', True); finally Ini.Free; end; |
Re: Ini auslesen und Checkbox auf True setzen?
Wow.... das ist es :thumb: Thx... jetzt klappt das. :bouncing4:
|
Re: Ini auslesen und Checkbox auf True setzen?
Zitat:
Delphi-Quellcode:
wird keine ini-Datei erzeugt, sondern nur eine Instanz der Klasse TIniFile (auch wenn es sich so lesen mag).
TIniFile.Create( 'meine.ini' );
Existiert die Datei nicht, wird bei jedem Lesen halt einfach der Default-Wert zurückgegeben. Erst wenn ich in die instanz etwas schreibe
Delphi-Quellcode:
und genau erst dann wird die Datei auch angelegt.
WriteBool( 'Section', 'Ident', 'Value' );
Wäre ja auch blöd ... ich will nur was lesen und produziere aber evtl. einen Schreibzugriff, und dass dann mit niedrigen Rechten in einem geschützten Verzeichnis ... das rummst dann wie an silvester :mrgreen: |
Re: Ini auslesen und Checkbox auf True setzen?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:05 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