Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi IniFiles automatisch laden (https://www.delphipraxis.net/53692-inifiles-automatisch-laden.html)

DJAYS 21. Sep 2005 14:04


IniFiles automatisch laden
 
hallo Leute,
ich schreibe ein Testprogramm und hab Inifiles erzeugt,möchte fragen ob es möglich ist,dass wenn ich das programm starte,dann lädt inifiles automatisch selbst.oder nach einem bestimmten fester automatisch laden,wenn ich das program konfiguriere.Kann jemand helfen?
danke

Luciano 21. Sep 2005 14:18

Re: IniFiles automatisch laden
 
Hi,
vielleicht OnCreate der Form die IniFiles laden? Vielleicht verstehe ich Deine Frage auch falsch :gruebel:

Greets

mschaefer 21. Sep 2005 14:25

Re: IniFiles automatisch laden
 
Moin, moin,

also zum Programmstart kann man die Initialisierung, das Mitteilen wo ein Inifile liegt in das Activate-Ereignis des Hauptformulars legen. Die eigentlichen Dateizugriffe erfolgen bei Inifile genau dann, wenn Du mit dem Read-Befehlen arbeitest. Das ist der Haken/ das Future der TiniFiles, dass es kein DatenCaching gibt und daher der Zugriff eher etwas
langsam, aber immer Dateiaktuell ist.

Delphi-Quellcode:

procedure TForm1.FormActivate(Sender: TObject);

var
  MyIniFile: TIniFile;
begin
  MyIniFile := TIniFile.Create('myapp.ini');
  with MyIniFile do
  begin
    if ReadBool('AutoLoad', 'FormProperties', False) = True then
    begin
      Visible := ReadBool('FormOptions', 'Visible', True);
      Color := TColor(ReadInteger('FormOptions', 'Color', clWindow));
      Caption := ReadString('FormOptions', 'Caption', 'Main');
  end;
  MyIniFile.Free;
end;

Grüße // Martin

DJAYS 21. Sep 2005 15:08

Re: IniFiles automatisch laden
 
danke für eure Ideen,aber ich kann damit nicht viel nutzen,da ich noch Anfänger hier bin.Eigentlich sieht my IniFile etwa so aus
[STADCTESTLIMITS]
Adc0MaxDiff=10
fAdc0MaxStdDev=2.5

[STADCTESTLIMITS]
Adc1MaxDiff=10
fAdc1MaxStdDev=2.5
wenn ich Exe-Datei ausführen,dann kommt main Formular,dort im Menü,wähle ich ein Hardware aus,dann öffnet ein Fenster mit Pulldown-menü,dort wähle ich wieder ein Port aus,dann kommt ein anderes fenster mit PC Comports COM1..COM4,hier wähle ich einen aus und dann lande wieder auf main formular.ich will das,nach dem ich im ersten Fenster(pulldown-menü)port auswähle,soll die Inifile geladen werden,damit ich weiß welche Werte da sind,bevor sie überschrieben werden.
danke nochmal

DJAYS 21. Sep 2005 16:04

Re: IniFiles automatisch laden
 
hi
ich nochmal,was ist denn diese Formproperties oder options?sind das die Sections in Inifiles oder?

freak4fun 21. Sep 2005 16:10

Re: IniFiles automatisch laden
 
Wenn du den Code von oben hast geh mal mit den Curser in MyIniFile und drück F1 oder bemühe deine Delpgihilfe, da ist das alles fein erklärt. Du kannst auch mit Shift + Strg + Space sehen, welche Parameter eine Funktion/Prozedur erwartet.

MfG
freak

marabu 21. Sep 2005 16:17

Re: IniFiles automatisch laden
 
Hallo DJAYS,

der erste Parameter der Lese- und Schreib-Methoden von TIniFile ist immer der Abschnittsname, aber das steht ja auch in deiner Delphi Online-Hilfe. Übrigens kannst du an das Aufklappen (OnClick) eines Untermenüeintrags eine Ereignisbehandlungsroutine binden, deine letzte Chance an den Einträgen des Untermenüs noch etwas zu ändern.

Und wenn du auf der sicheren Seite willst, dann nimmst du TMemIniFile. Du musst dann keine seltsamen Fehler befürchten, falls deine Steuerdatei mal größer wird.

Grüße vom marabu


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