Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi INI laden funzt nicht (https://www.delphipraxis.net/18853-ini-laden-funzt-nicht.html)

Wadim 25. Mär 2004 11:39


INI laden funzt nicht
 
hi,

kann mir einer sagen warum er das hier nicht lädt??

Delphi-Quellcode:
var a: integer;
begin
for a := 1 to 97 do
  begin
    with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do
      begin
        (findcomponent('form2.edit' + inttostr(a)) as tedit).Text := readstring ('Daten','Feld'+ inttostr (a),'');
        free;
      end;
  end;
end;

Dax 25. Mär 2004 11:42

Re: INI laden funzt nicht
 
Du solltest vielleicht mal das "free" herausnehmen, wenn ich nicht irre, zerstört es dein Formular.

Wadim 25. Mär 2004 11:45

Re: INI laden funzt nicht
 
Zitat:

Zitat von Dax
Du solltest vielleicht mal das "free" herausnehmen, wenn ich nicht irre, zerstört es dein Formular.

hmm hab ich gemacht - funzt noch immer net :?

Dax 25. Mär 2004 11:47

Re: INI laden funzt nicht
 
Noch eine Idde:

Delphi-Quellcode:
var a: integer;
i: TIniFile;
begin
  i := TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini'));
  for a := 1 to 97 do
    begin
      with i do
        begin
          (findcomponent('form2.edit' + inttostr(a)) as tedit).Text := readstring ('Daten','Feld'+
           inttostr (a),'');
        end;
    end;
  i.free;
end;

Taladan 25. Mär 2004 11:48

Re: INI laden funzt nicht
 
An welcher stelle genau hapert es den?

Wadim 25. Mär 2004 11:52

Re: INI laden funzt nicht
 
Zitat:

Zitat von Dax
Noch eine Idde:

Delphi-Quellcode:
var a: integer;
i: TIniFile;
begin
  i := TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini'));
  for a := 1 to 97 do
    begin
      with i do
        begin
          (findcomponent('form2.edit' + inttostr(a)) as tedit).Text := readstring ('Daten','Feld'+
           inttostr (a),'');
        end;
    end;
  i.free;
end;

funzt leider auch net :-(

@Taladan - ich weiß es nicht genau, er zeigt mir ja keine fehlermeldung an oder so, ladet einfach nicht die einträge :gruebel:

Dax 25. Mär 2004 11:53

Re: INI laden funzt nicht
 
Vielleicht gibt es den Eintrag, den du suchst, gar nicht...

Wadim 25. Mär 2004 11:55

Re: INI laden funzt nicht
 
Zitat:

Zitat von Dax
Vielleicht gibt es den Eintrag, den du suchst, gar nicht...

doch doch fen gibt es, hab extra nochmal nachgeguckt und auch mal versucht das normal zu laden (ohne schleife) und das geht auch, aber bei soviele einträgen will net jedes einzele extra eingeben

Taladan 25. Mär 2004 12:03

Re: INI laden funzt nicht
 
Probier es mal so
Delphi-Quellcode:
var test : string;
[...]
test := 'Feld'+inttostr(a); //vermutlich liegt hier irgendwo dein fehler, in dem String, überprüfe einfach mal während der laufzeit, ob er den string auch richtig zusammenfügt, und ob es diesen wert auch in deiner Ini gibt.
(findcomponent('form2.edit' + inttostr(a)) as tedit).Text := i.readstring ('Daten', test, 'ERROR BY Programmierer');

Delphi_Fanatic 25. Mär 2004 12:42

Re: INI laden funzt nicht
 
Er findet Deine ini-Datei nicht.

Setzt doch mal nur zum testen einen festen Pfad in Dein Tini.....Create ein, z.B. 'C:\myfile.ini' und
probier's dann nochmal.
Wenn's dann läuft, dann weißt Du, dass es nur daran lag, dass er Deine ini-Datei nicht gefunden hat.

Oder bau mal testweise das hier ein

showmessage (ExtractFilePath(ParamStr(0))+'Einstellungen.ini') ;

Dann siehst Du ja, ob da mit dem Pfad usw... alles in Ordnung ist.

Und überprüf' doch auch nochmal, ob Deine Einstellungen.ini überhaupt vorhanden ist.

Wadim 25. Mär 2004 13:27

Re: INI laden funzt nicht
 
Zitat:

Zitat von Delphi_Fanatic
Er findet Deine ini-Datei nicht.

Setzt doch mal nur zum testen einen festen Pfad in Dein Tini.....Create ein, z.B. 'C:\myfile.ini' und
probier's dann nochmal.
Wenn's dann läuft, dann weißt Du, dass es nur daran lag, dass er Deine ini-Datei nicht gefunden hat.

Oder bau mal testweise das hier ein

showmessage (ExtractFilePath(ParamStr(0))+'Einstellungen.ini') ;

Dann siehst Du ja, ob da mit dem Pfad usw... alles in Ordnung ist.

Und überprüf' doch auch nochmal, ob Deine Einstellungen.ini überhaupt vorhanden ist.

hmm -also hab jetzt alles ausprobiert mit pfad eingeben und prüfen.

die ini datei gibt es, die hab ich ja selbst erstellt und liegt im selben ordner wie die .exe -einträge sind auch 100% vorhanden.

wie gesagt wenn ich das einzelnt eingeben ohne schleife dann ladet er das - ich glaub das geht garnicht mir schleife laden :gruebel:

@Taladan - also er ladet das ERROR.... nicht??

ich hab da eine vermutung, und zwar glaub ich das er gernicht in den (findcomponent.... befehl reinkommt, hab mal dort was eingegeben wo normalerweisen ein error kommen müste - also anstatt mit
(findcomponent('form2.edit' ... hab ich mal (findcomponent('form5.edit'... eingegeben das aber garnicht exestiert, hat aber garnichts gesagt also ich den button geklickt hab :-/

Markus K. 25. Mär 2004 13:41

Re: INI laden funzt nicht
 
Hallo Wadim,
hier ist nochmal ein Vorschlag von mir.
Delphi-Quellcode:
var a: integer;
    i: TIniFile;
    Str: String;
begin
     i := TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini'));
     for a := 1 to 97 do
     begin
     Str:='Feld'+IntToStr(a);
     TEdit(Form2.FindComponent('Edit'+IntToStr(a))).Text:=i.ReadString('Daten',Str,'');
     end;
end;
Dein Problem ist glaub ich, das du die Edit's auf dem falschen Formular gesucht hast (nach dem Schema Form1.Form2.Edit).
So müsste es eigentlich gehen.

Tschüß Markus

Wadim 25. Mär 2004 13:49

Re: INI laden funzt nicht
 
Zitat:

Zitat von Markus K.
Hallo Wadim,
hier ist nochmal ein Vorschlag von mir.
Delphi-Quellcode:
var a: integer;
    i: TIniFile;
    Str: String;
begin
     i := TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini'));
     for a := 1 to 97 do
     begin
     Str:='Feld'+IntToStr(a);
     TEdit(Form2.FindComponent('Edit'+IntToStr(a))).Text:=i.ReadString('Daten',Str,'');
     end;
end;
Dein Problem ist glaub ich, das du die Edit's auf dem falschen Formular gesucht hast (nach dem Schema Form1.Form2.Edit).
So müsste es eigentlich gehen.

Tschüß Markus

:thuimb: :wink: :mrgreen: :cheers: - das war es :chat:

SUPER DANKE :spin:

mfg wadim


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