![]() |
Daten aus *.ini Datei auslesen
Hi!
Bin neu in Delphi und habe ein Problem bzw. eine Frage. Wie kann ich Daten aus einer *.ini Datei auslesen? Die Daten sollten dann wie folgt verarbeitet werden: Jeder Schlüssel soll ein Button sein, dabei ist der Name des Schlüssels der Text, der auf dem Button steht. Die Werte der Schlüssel sind Verweise auf Dateien, welche bei Betätigung des Buttons ausgeführt werden sollen. Zu guter Letzt soll für jede Section eine neue Spalte Buttons angelegt werden. Wie könnte ich das machen bzw. ist sowas überhaupt möglich? Danke schonmal im Voraus. Greetz Diddy |
Re: Daten aus *.ini Datei auslesen
|
Re: Daten aus *.ini Datei auslesen
Danke für die Antwort!
Habe mir das Ganze mal zu Gemüte geführt! :) Jetzt bleibt nur noch die Frage wie ich automatisch so viele Buttons erstelle, wie Schlüssel und Werte in einer Section stehen. Also Bsp.: So sieht beispielsweise die .ini Datei aus:
Code:
Nun sollte das Programm automatisch erkennen, das es drei Schlüssel sind und drei Buttons anlegen. Wenn ich nun aber die .ini Datei verändere und nur noch zwei Schlüssel drin stehen, dann sollte das Programm nur noch 2 Buttons anzeigen.
[SECTION1]
SCHLÜSSEL1 = Wert1 SCHLÜSSEL2 = Wert2 SCHLÜSSEL3 = Wert3 |
Re: Daten aus *.ini Datei auslesen
Zitat:
|
Re: Daten aus *.ini Datei auslesen
So... habe das alles nun etwas anders gemacht als geplant... aber dabei ist ein neues Problem entstanden. Beim Klick auf einen Button sollen mehrere Setups hintereinander ausgeführt werden, aber es tut sich nichts. Kan mir evt. jemand sagen was an meinem Code falsch ist?
Delphi-Quellcode:
Greetz Diddy
procedure TMainForm.cmdUpdateClick(Sender: TObject);
const C_STR_INI_FILE = 'start.ini'; var cExecPath : String; nExecResult : Integer; cIniFile, cAppPath : String; oIniFile : TIniFile; setupCount, i : Integer; setup : TStringList; execString, execApp : string; begin cExecPath := ExtractFilePath(Application.ExeName); cIniFile := cExecPath + C_STR_INI_FILE + #0; oIniFile := TIniFile.Create(cIniFile); // update 1, update 2, update 3 etc updateCount := oIniFile.ReadInteger('update', 'count', 0); for i := 1 to updateCount do begin execApp := oIniFile.ReadString('update', 'update' + IntToStr(i), ''); execString := cExecPath + execApp + #0; //ShowMessage(execString); nExecResult := WinExec( @execString[1], SW_SHOWDEFAULT); WinExec( @execString[1], SW_SHOWDEFAULT); end; end; |
Re: Daten aus *.ini Datei auslesen
Hi und herzlich Willkommen in der DP!
Da ich nicht weiß, wie dein Code genau funktioniert, kann ich nur debuggen sagen. Das machst du ganz einfach, wie hier beschrieben (Debuggen solltest du sowieso können, wenn nicht, dann lern es, denn es nimmt dir manchmal viel Arbeit ab): |
Re: Daten aus *.ini Datei auslesen
Und Du bist Dir sicher dass:
Delphi-Quellcode:
updateCount auch aus der Ini gelesen wird, wenn nicht hat updateCount einen
// update 1, update 2, update 3 etc
updateCount := oIniFile.ReadInteger('update', 'count', 0); for i := 1 to updateCount do default Wert von 0 und dann wird nichts gemacht. Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:47 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