Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi paramstr(1) geht nicht (https://www.delphipraxis.net/7675-paramstr-1-geht-nicht.html)

TheMiller 18. Aug 2003 21:08


paramstr(1) geht nicht
 
Hey Leute.

Habe ein etwas umfanreicheres Programm. Nun möchte ich, dass die ini aus dem Ordner geholt wird, indem auch das Programm läuft. Dazu habe ich folgendes gemacht:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var ini:TInifile;
begin
ini:=TInifile.Create(paramstr(1)+'Settings.ini');
try
[Anweisungen aus Ini]
finally
ini.free;
end;
end;
Dies funktioniert NICHT. Dann habe ich gleich zum Programmstart folgendes eingegeben:

Delphi-Quellcode:
ShowMessage(paramstr(1));
Es kommt eine Meldung mit einem leeren Fenster. Was ist da los. Vorher gings doch auch...

Bitte helft mir

Marco Haffner 18. Aug 2003 21:10

Re: paramstr(1) geht nicht
 
Du meinst wohl ParamStr(0).
ParamStr(1) liefert den ersten Programm-Parameter, wenn Du die Datei direkt im Explorer öffnest, kann er nichts enthalten.

TheMiller 18. Aug 2003 21:15

Re: paramstr(1) geht nicht
 
wenn ich paramstr(0) einsetze, dann kommt die Meldung mit dem Programmpfad + dem aktuell geööfnetem Namen BSP:

C:\Pfad1\Programm.exe

Wenn ich paramstr(0) einsetzen würde wäre dies das Ergebnis:

Delphi-Quellcode:
ini:=TInifile.Create(paramstr(0)+'Settings.ini');
Er kann die Datei (C:\Pfad1\Programm.exeSettings.ini) nicht öffnen...

Marco Haffner 18. Aug 2003 21:18

Re: paramstr(1) geht nicht
 
Delphi-Quellcode:
Ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));

Stanlay Hanks 18. Aug 2003 21:18

Re: paramstr(1) geht nicht
 
Du musst ExtractFilePath(ParamStr(0)) nehmen.

Man liest sich, Stanlay :hi:

TheMiller 18. Aug 2003 21:40

Re: paramstr(1) geht nicht
 
Nein, geht trotzdem nicht. :twisted:

sakura 18. Aug 2003 21:43

Re: paramstr(1) geht nicht
 
Zitat:

Zitat von DJ-SPM
Nein, geht trotzdem nicht. :twisted:

Das ist keine hilfreiche Aussage :roll: Was für eine Fehlermeldung bekommst Du, was läuft falsch... ?

...:cat:...

TheMiller 18. Aug 2003 21:45

Re: paramstr(1) geht nicht
 
Ganz genau das selbe, wie ich es oben beschrieben habe

wenn ich paramstr(0) einsetze, dann kommt die Meldung mit dem Programmpfad + dem aktuell geöfnetem Namen BSP:

C:\Pfad1\Programm.exe


Er kann die Datei (C:\Pfad1\Programm.exeSettings.ini) nicht öffnen...


Momentan sieht's so aus

Delphi-Quellcode:
ar ini:TInifile;
    top:String;
begin
Showmessage(paramstr(0));
ini:=TIniFile.Create(ExtractFilePath(ParamStr(0)+'settings.ini'));

RomanK 18. Aug 2003 21:49

Re: paramstr(1) geht nicht
 
Hoi,
Delphi-Quellcode:
ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'settings.ini');
ich weis nicht ob du noch ein "\" nach dem ExtractFilePath setzten musst. Dann würde das Ganze so aussehen:
Delphi-Quellcode:
ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'\settings.ini');

Marco Haffner 18. Aug 2003 21:49

Re: paramstr(1) geht nicht
 
Dann mach mal das hier daraus:
Delphi-Quellcode:
ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'settings.ini');
Du hast den Pfad von ParamStr(0)+'settings.ini' extrahiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:11 Uhr.
Seite 1 von 3  1 23      

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