AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Daten aus *.ini Datei auslesen

Ein Thema von Diddy · begonnen am 28. Sep 2006 · letzter Beitrag vom 29. Sep 2006
Antwort Antwort
Diddy

Registriert seit: 28. Sep 2006
Ort: Leinefelde/Thüringen
3 Beiträge
 
Delphi 2005 Personal
 
#1

Daten aus *.ini Datei auslesen

  Alt 28. Sep 2006, 10:37
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
  Mit Zitat antworten Zitat
Benutzerbild von Daniel B
Daniel B

Registriert seit: 27. Okt 2005
Ort: Dachau
453 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Daten aus *.ini Datei auslesen

  Alt 28. Sep 2006, 10:46
Hallo,

da wäre eine kleine Einführung: http://www.delphipraxis.net/internal...&highlight=ini
Servus...
  Mit Zitat antworten Zitat
Diddy

Registriert seit: 28. Sep 2006
Ort: Leinefelde/Thüringen
3 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Daten aus *.ini Datei auslesen

  Alt 28. Sep 2006, 11:06
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:
[SECTION1]
SCHLÜSSEL1 = Wert1
SCHLÜSSEL2 = Wert2
SCHLÜSSEL3 = Wert3
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.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Daten aus *.ini Datei auslesen

  Alt 28. Sep 2006, 11:16
Zitat von Diddy:
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:
[SECTION1]
SCHLÜSSEL1 = Wert1
SCHLÜSSEL2 = Wert2
SCHLÜSSEL3 = Wert3
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.
Schau in der OH unter ReadSection nach
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Diddy

Registriert seit: 28. Sep 2006
Ort: Leinefelde/Thüringen
3 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Daten aus *.ini Datei auslesen

  Alt 29. Sep 2006, 11:42
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:
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;
Greetz Diddy
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#6

Re: Daten aus *.ini Datei auslesen

  Alt 29. Sep 2006, 11:53
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):
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Daten aus *.ini Datei auslesen

  Alt 29. Sep 2006, 11:55
Und Du bist Dir sicher dass:

Delphi-Quellcode:
// update 1, update 2, update 3 etc
  updateCount := oIniFile.ReadInteger('update', 'count', 0);

  for i := 1 to updateCount do
updateCount auch aus der Ini gelesen wird, wenn nicht hat updateCount einen
default Wert von 0 und dann wird nichts gemacht.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:04 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