| Autor |
Beitrag |
Freischaltcode
      
Beiträge: 34
|
Verfasst: So 18.09.05 15:32
Habe (anscheinend) ein Problem mit einer INI-Datei.
Auszug 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| procedure Tmyhttpds.FormCreate(Sender: TObject); var ini: TIniFile; begin ini:=TIniFile.Create('config.ini'); try myhttpds.idhttpds.DefaultPort:=ini.ReadInteger('configuration','port',80);
finally ini.free; end; myhttpds.PortValue.caption:=inttostr(myhttpds.idhttpds.DefaultPort); end; |
Will nach dem einlesen der einstellung aus der INI-Datei noch den aktuellen Wert in einem Label angeben, aber das Label zeigt immer den wert 80 an.
Die der wert zu port in der ini ist 91.
Name der ini-Datei ist korrekt im Quellcode angegeben!
Moderiert von raziel: Code- durch Delphi-Tags ersetztModeriert von raziel: Topic aus Sonstiges verschoben am So 18.09.2005 um 16:41
|
|
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: So 18.09.05 15:53
Dass dein Label 80 anzeigt, deutet darauf hin, dass dein Programm die Ini-Datei nicht findet, und deshalb den Defaultwert verwendet.
Liegt die config.ini denn in dem Programmverzeichnis?
Dann könntest du nämlich mal
Delphi-Quelltext 1:
| ini:=TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'config.ini'); |
ausprobieren.
Möglicherweise ist dein Programm nämlich mit einem falschen Startverzeichnis gestartet.
Grüße,
Ja-Pa
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: So 18.09.05 15:56
Ohne Angabe des Pfades wird die Datei IMHO in 'C:\' gesucht.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: So 18.09.05 16:05
Nicht unbedingt, je nachdem was du für ein Startverzeichnis (z.B. in einer LNK- oder Batch-Datei) angibst.
Bei mir auf XP wird die Datei ohne Angabe übrigens im Benutzerverzeichnis gesucht (also C:\Dokumente und Einstellungen\<User>\), aber keine Ahnung wie das auf 9x-Windowsen ist (vielleicht suchen die in C:\).
Versuch auf jeden Fall mal das mit dem ExtractFilePath(ParamStr(0)), es sollte dann funktionieren.
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
Freischaltcode 
      
Beiträge: 34
|
Verfasst: So 18.09.05 16:05
Man dankt!
Lag am fehlenden Pfad (ExtractFilePath..)
|
|
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: So 18.09.05 16:06
Sag ich doch
Viel Spaß noch beim weiter programmierern!
Ja-Pa
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: So 18.09.05 16:06
Ja-Pa hat folgendes geschrieben: | Nicht unbedingt, je nachdem was du für ein Startverzeichnis (z.B. in einer LNK- oder Batch-Datei) angibst.
Bei mir auf XP wird die Datei ohne Angabe übrigens im Benutzerverzeichnis gesucht (also C:\Dokumente und Einstellungen\<User>\), aber keine Ahnung wie das auf 9x-Windowsen ist (vielleicht suchen die in C:\).
Versuch auf jeden Fall mal das mit dem ExtractFilePath(ParamStr(0)), es sollte dann funktionieren. |
Ich hab auch XP, aber vielleicht täusche ich mich mit 'C:\'.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: So 18.09.05 16:09
Versuchs mal andersherum:
Speicher eine Datei ohne Angabe vom Pfad, dann landet sie (zumindest bei mir) im Benutzerverzeichnis.
Beim Lesen ist das aber genauso, es gibt eine FileNotFound-Exception wenn die Datei in C:\ liegt, nicht aber wenn Sie in C:\Dokumente und Einstellungen\Ja-Pa\ liegt.
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 18.09.05 21:51
Ja-Pa hat folgendes geschrieben: | Versuchs mal andersherum:
Speicher eine Datei ohne Angabe vom Pfad, dann landet sie (zumindest bei mir) im Benutzerverzeichnis. |
Purer Zufall, dann war das gerade das aktuelle Verzeichnis. Ini-Dateien laden ohne Pfadangabe per default im Windows Verzeichnis.
|
|
Ja-Pa
      
Beiträge: 458
Win XP, Suse 9.3
D1, D3, D5 Std, D7 Pro, D2005 Pers, Kylix 3
|
Verfasst: Mo 19.09.05 07:54
Noch eine neue Möglichkeit
Also am besten immer den Pfad mit angeben, @Freischaltcode.
_________________ Der Autor dieses Textes haftet nicht für Schäden an Soft- oder Hardware
oder Vermögensschäden, die durch das Benutzen des Textes entstehen.
|
|