Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Auf eine Ini-Datei zugreifen... (https://www.delphipraxis.net/5130-auf-eine-ini-datei-zugreifen.html)

hircusmutzus 25. Mai 2003 11:56


Auf eine Ini-Datei zugreifen...
 
Hi,
ich bin mit Delphi noch nicht so erfahren und habe deshalb mal eine Newbie-Frage:
Wie kann ich auf eine ini-Datei quasi Zentral zugreifen?
Damit meine ich dass ich einmal alle möglichen Informationen aus der Ini-Datei auslese und in unterschiedlichen Prozeduren teilweise verarbeite?
Z.B. habe ich in der Ini-Datei einerseits die Position des Formulars gespeichert sowie verschiedene E-Mail Adressen.
Jetzt möchte ich in einem Schritt in Variablen die Fensterposition sowie die E-Mail Adressen speichern.
Später greife ich dann einzeln auf die jeweiligen Werte zu.
Das Ziel ist, dass ich nicht in jeder Prozedur neu auf die Ini-Datei zugreifen muss.
Ich hoffe ich konnte mein Problem einigermaßen gut beschreiben!

MfG Matthias Volland

Luckie 25. Mai 2003 12:59

Lies sie doch im OnCreate aus.

hircusmutzus 25. Mai 2003 14:42

und wenn ich sie in OnCreate auslese, werden die werte dann "global" gespeichert?

Luckie 25. Mai 2003 14:48

Wenn du globale Variablen nimmst.

Stanlay Hanks 25. Mai 2003 15:00

Du musst die Werte einfach in Variablen einlesen, die du global deklariert hast.

[Edit] Mist zu spät! :x

hircusmutzus 25. Mai 2003 15:45

ok, vielen dank! :D

woki 25. Mai 2003 17:40

Hallo,

vielleicht kommt TMemIniFile deinen Wünschen am nächsten?

Grüße
Woki

Nisbo 13. Mär 2005 15:32

Re: Auf eine Ini-Datei zugreifen...
 
Stehe gerade beim selben Problem

ich speicer die Fensterpostion in einer ini, soweit kein Problem, nur beim auslesen in OnCreate wird die Position nicht übernommen

Delphi-Quellcode:
procedure TForm1.Form1Create(Sender: TObject);
    var Ini: TIniFile;
    begin
   
    try
       Ini:=TIniFile.Create('fenster.ini');
       Form1.Left:=Ini.ReadInteger('Fensterposition', 'Left',0);
       Form1.Top:=Ini.ReadInteger('Fensterposition', 'Top',0);
    finally
       Ini.Free;
    end;
end;

Airblader 13. Mär 2005 16:32

Re: Auf eine Ini-Datei zugreifen...
 
Wie sieht denn deine INI-Datei aus? (poste sie am besten mal)

Und ist es gewollt, dass sich die INI direkt im C:\ befindet (oder welchem Laufwerk auch immer) und nicht im Ordner wie das Programm?

air

malo 13. Mär 2005 16:35

Re: Auf eine Ini-Datei zugreifen...
 
Zitat:

Zitat von Airblader
Wie sieht denn deine INI-Datei aus? (poste sie am besten mal)

Und ist es gewollt, dass sich die INI direkt im C:\ befindet (oder welchem Laufwerk auch immer) und nicht im Ordner wie das Programm?

air

Er hat wahrscheinlich den Code vom Delphi-Source-Tutorial übernommen ;)

PeterRettig 13. Mär 2005 17:06

Re: Auf eine Ini-Datei zugreifen...
 
Im OnCreate Ereignis dürften die Werte für Left etc. generell nicht setzbar sein...
In OnShow ist das Ganze besser aufgehoben.

Peter

Speedmaster 13. Mär 2005 17:07

Re: Auf eine Ini-Datei zugreifen...
 
Ich würde übrigens TMemIniFile nehmen dieses sollte etwas schneller sein!

Nisbo 13. Mär 2005 17:11

Re: Auf eine Ini-Datei zugreifen...
 
danke für die antwort, habe es schon hinbekommen

habe diese globalen vars eingefügt

var fl, ft : Integer;

und dann beim auslesen der ini

fl:=Ini.ReadInteger('Fensterposition', 'Left',0);
ft:=Ini.ReadInteger('Fensterposition', 'Top',0);

verwendet

dann nur noch in einer anderen procedure:

Form1.Top := ft;
Form1.Left := fl;

gesetzt und schon funktioniert es, also im endeffekt bestimmt so wie es hier auch vorgeschlagen wurde

aber ich packe mal
Form1.Top := ft;
Form1.Left := fl;

in on show rein um zu testen, denn da wo ich es jetzt habe ist es bestimmt nicht ganz richtig

IngoD7 14. Mär 2005 11:07

Re: Auf eine Ini-Datei zugreifen...
 
Zitat:

Zitat von PeterRettig
Im OnCreate Ereignis dürften die Werte für Left etc. generell nicht setzbar sein...

Wieso das denn wohl nicht?


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:59 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