Ich habe es mit verschiedenen Varianten versucht:
Delphi-Quellcode:
//pdx ist das Dos-Prog und der Parameter steht in g_sName
ShellExecute(0, '
open', '
pdx', PChar(g_sName),
NIL, SW_SHOW);
//oder mit Luckies Funktion aus der Code-Lib:
var
ProcID: cardinal;
RunProcess('
pdx ' + g_sName}, SW_SHOW, false, @ProcID)
//oder eben so:
WinExecAndWait_32('
pdx ' + g_sName, 1, false);
//hab auch dies mal versucht, da kommen wilde Fehlermeldungen (Access Violation etc.):
ShellExecute(0, '
open', '
cmd.exe', PChar('
/C "pdx ' + g_sName + '
"'),
NIL, SW_SHOW);
Bei den ersten 3 Varianten, bleibt, wie gesagt, mein Programm stehen, bis das DOS-Prog beendet ist. Und ich hab null Ahnung, warum.