Autor Beitrag
CodeRed
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 45

Win 2000
D7 Pers
BeitragVerfasst: Fr 22.04.05 20:42 
hi!
hab schon gesucht, aber ich find einfach keine lösung, die funktioniert.

wie schon im titel erwähnt will ich ein programm starten und mehrere parameter übergeben.
ich mach das so:
ausblenden Delphi-Quelltext
1:
Shellexecute(handle,'open',pchar(ExtractFilePath(Application.ExeName)+'Programm.exe',pcahr('param1 param2'),nil,sw_show);					


ich bin mir ziemlich sicher, dass der erste parameter übergeben wird, der zweite jedoch nicht. vielleicht könnt ihr mir ja die zeile richtig posten...

MfG Thx
CodeRed

Moderiert von user profile iconmatze: Delphi-Tags hinzugefügt.
demo88
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 160

Ubuntu 6.04, Win XP
Delphi 7
BeitragVerfasst: Fr 22.04.05 22:16 
Ich mach das immmer so:

ausblenden Delphi-Quelltext
1:
Shellexecute(handle, 'open', pchar(ExtractFilePath(Application.ExeName)+'Programm.exe',pcahr('-param1 -param2'), nil, sw_show);					

_________________
"Das ist kein Bug, das ist ein Feature..."
fvolk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 203

Win XP (Home & Pro)
Delphi 2005 Pers
BeitragVerfasst: Sa 23.04.05 14:05 
Zwischen beiden Varianten besteht kein Unterschied, es kommt eben darauf an, wie das Programm seine Parameter übergeben bekommen will. Unter Windows haben sich "/" sowie "-" durchgesetzt, unter Unix-System wird häufig "-" für einzelne Zeichen und "--" für Sinnbilder verwendet.

Aber zu deinem Problem:

Zitat:
ich bin mir ziemlich sicher, dass der erste parameter übergeben wird, der zweite jedoch nicht.


Das könnte daran liegen, dass der Code falsch ist. Folgendermaßen ruft man ShellExecute auf (vgl. Suche im MSDN SHELLEXECUTE)

ausblenden Delphi-Quelltext
1:
ShellExecute(0'open', PChar(AUFZURUFENDE_DATEI), PChar(PARAMETER), nil, SW_SHOW);					


Alternativ kannst du auch die beiden PChar in PAnsiChar abändern (je nach Delphi-Version).

_________________
Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist überzeugt, dass er genug davon habe.
(René Descartes)