Hallo!
Ich nutze die folgende Funktion um eine externe Anwendung zu starten:
Code:
Function ExecuteAndWait(sExecutableFile : String; wWindowState : Word = SW_SHOWNORMAL) : Boolean;
var
siInfo : TStartUpInfo;
piInfo : TProcessInformation;
begin
FillChar(siInfo, SizeOf(siInfo), #0);
with siInfo do begin
cb := SizeOf(siInfo);
dwFlags := STARTF_USESHOWWINDOW;
wShowWindow := wWindowState;
end;
Result := CreateProcess(NIL, pChar(sExecutableFile), NIL, NIL, FALSE, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, NIL, pchar(ExtractFilePath(sExecutableFile)),siInfo, piInfo);
end;
Funktioniert sonst ohne Probleme, in folgendem Beispiel führt er aber nichts aus:
Code:
Executeandwait('c:\plink.exe -N -R 1234:
localhost:1234 user@server.com -P 22');
Möchte eine Putty Verbindung starten mit den obigen Parametern, und es liegt wohl an den Doppelpunkten das er nichts macht. Nehme Ich die Doppelpunkte weg dann startet er die Anwendung ganz normal..
Hat jemand eine Idee wie ich die Anwendung mit den obigen Parametern gestartet kriege, inkl. der Doppelpunkte? Den Befehl in eine batch schreiben und diese dann ausführen funktioniert auch aber ist nicht so ideal.
beste grüße
Antony