raven - Fr 06.06.03 15:52
Titel: INI Datei auf Sections prüfen ... prob
hi leutz ;)
ich möchte zu begin meines programms in einer Ini Datei prüfen ob 4 bestimmte sections vorhanden sind ... die ini datei soll beim starten des Progs in einem open dialog ausgwählt werden... wenn die 4 sections vorhanden sind kommt ne meldung OK und das prog wird angezeigt, wenn nich kommt ein fehlerdialog und das programm wird geschlossen, also nicht geöffnet... das prob is nur egal welche ini datei ich auswähle, ganz egal ob die sections excisitieren es kommt immer die fehlermeldung... ?!? wer erkennt hier den fehler?:
ia: ne stringvariable die den file path speichert ....
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| procedure TForm1.FormCreate(Sender: TObject); var ini:Tinifile; begin if open.execute then begin ia:=open.Files.Text; ini:=tinifile.create(ia); if (ini.SectionExists('Engine.GameEngine')=true) and (ini.SectionExists('D3DDrv.D3DRenderDevice')=true) and (ini.SectionExists('WinDrv.WindowsClient')=true) and (ini.SectionExists('Engine.Player')=true) then begin showmessage('ok!') end else begin messagedlg('Ungültige *.INI Datei!',mterror,[mbok],0); application.Terminate; end; end; end; |
danke
Delete - Fr 06.06.03 21:37
Geht. Ich vermisse lediglich, dass du die Variable "ini" am Schluss wieder freigibst. So sieht´s bei mir aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| ini:=TIniFile.Create(ia); try if(ini.SectionExists('Engine.GameEngine')) and (ini.SectionExists('D3DDrv.D3DRenderDevice')) and (ini.SectionExists('WinDrv.WindowsClient')) and (ini.SectionExists('Engine.Player')) then begin showmessage('ok!') end else begin messagedlg('Ungültige *.INI Datei!',mterror,[mbok],0); application.Terminate; end; finally ini.Free; end; |
Klappt. Ich vermute den Fehler eher hier:
raven hat folgendes geschrieben: |
|
Wie wär´s stattdessen mit