Entwickler-Ecke
Windows API - Konsolen Anwendung starten + Abfangen der Echos
apnm - Mi 21.08.02 23:14
Titel: Konsolen Anwendung starten + Abfangen der Echos
Hallo
Habe folgendes Prob.
Will ein Konsolen Tool starten, mit Parametern, aber das Problem ist, dass ich alles abfangen will, und zB in nem Memo Feld ausgeben will, was mir das Tool zurückpostet.
Günter - Do 22.08.02 15:51
Hallo apnm,
Ich hatte mal ein ähnliches Problem, welches ich so gelöst habe:
Die Anwendung muss mit 'CreateProcess' (in der Hilfe --> Windows SDK) gestartet werden:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| BOOL CreateProcess(
LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCTSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); |
In der Struktur lpStartUpInfo muss dwFlag mit 'STARTF_USESTDHANDLES' belegt werden, dann kann man für 'hStdOutPut, hStdInput und hStdError' eigene Handles angeben:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| procedure Blabla; var hOutput : Integer; STUI : STARTUPINFO begin
... STUI.dwFlags := STARTF_USESTDHANDLES
STUI.hStdInput := GetStdHandle(STD_INPUT_HANDLE); STUI.hStdError := GetStdHandle(STD_ERROR_HANDLE);
hOutPut := FileOpen('xyz.txt');
STUI.hStdOutput := hOutput;
CreateProcess(...);
... end; |
Jetzt schreibt der gestartete Prozess in die Datei.
Gruss Günter
apnm - Fr 30.05.03 10:07
Titel: Handle
Hallo
Ziehmlich spät, dass ich hier nochmal eine Frage habe ;)
Und zwar wegen dem Handle
Gibt es eine Möglichkeit die ganze Sache nicht erst in eine Datei zu stecken, sondern direkt in ein Memo Feld, ich möchte den Umweg über eine Datei vermeiden.
Kann man da nict einfach das Memo Handle mitgeben, oder irgendwie anders?
Wäre um deine Hilfe dankbar
maxk - Fr 30.05.03 21:26
Schau dir mal Pipes an
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!