Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Rückgabe von Shellexecute? (https://www.delphipraxis.net/91021-rueckgabe-von-shellexecute.html)

Gentleman 27. Apr 2007 15:26


Rückgabe von Shellexecute?
 
Hallo,

Ich stehe mal wieder vor einem kleinen Problem und habe auch schon in der DP, wie auch in Google gestöbert, leider ohne Erfolg. Jetzt hoffe ich, dass mir vielleicht einer von euch weiterhelfen kann.

Problem:
Es dreht sich um die php.exe. Wenn ich diese in der Eingabeaufforderung aufrufe und als Parameter eine php-Datei angebe, wird diese von der php.exe umgesetzt und es wird als Text die Datei mit ausgeführtem php-code ausgegeben.

Genau dies möchte ich in meinem Programm auch machen. Mein Versuch war also folgender:
Delphi-Quellcode:
ShellExecute(Handle, 'open', 'C:\PHP\php.exe', 'C:\Test.php', '', '', SW_SHOWNORMAL);
Nun besitzt Shellexecute ja einen Rückgabewert, allerdings, wie ich erfahren habe, ist das nur ein ErrorCode, der mir bei meinem Problem nicht weiterhilft.

Mein zweiter Versuch war es die Ausgabe in eine Datei zu speichern:
Delphi-Quellcode:
ShellExecute(Handle, 'open', 'C:\PHP\php.exe', 'C:\Test.php >> C:\Test.html', '', '', SW_SHOWNORMAL);
Doch auch das hat leider nicht funktioniert.

Nun zu meiner Frage:
gibt es eine Möglichkeit (nicht zwingend mit ShellExecute) den Rückgabewert der php.exe direkt in einer Variable zu erfassen?


Vielen Dank im Voraus!

Gruß,
Lennard

Christian Seehase 27. Apr 2007 15:31

Re: Rückgabe von Shellexecute?
 
Moin Lennard,

such hier mal nach Hier im Forum suchenShellExecuteEx oder Hier im Forum suchenCreateProcess.
Damit solltest Du dann auch den ReturnCode ermitteln können.

Gentleman 29. Apr 2007 11:27

Re: Rückgabe von Shellexecute?
 
Hallo,

vielen Dank für die Hilfe. Ich bin bei der Suche auf CreatePipe gestoßen, damit hab ich es hinbekommen.

Falls sich jamand dafür interessiert, hier ist der Code.


Gruß,
Lennard


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz