【发布时间】:2009-05-11 17:46:03
【问题描述】:
我的老板有一个他编写的 Windows 应用程序。它不是一个 Windows 控制台应用程序,而是一个 Windows GUI 应用程序。我们当然有源代码,但他不希望它成为控制台应用程序。他希望它仍然是一个常规的 GUI 应用程序。
问题是,他希望能够从 PHP 调用它,向它传递参数,并让应用程序将信息返回给调用 PHP 脚本。我可以轻松调用 Windows 控制台应用程序并读取输出。我什至可以调用 VBS 脚本并从中获取输出。
但是,我们不知道如何让常规 Windows 应用程序将数据输出到调用 php 脚本,而无需将输出写入文本文件并从 php 中读取。
有人能做到这一点吗?如果有,怎么做?
提前致谢。
艾米
编辑添加:显然,老板把这段代码放在他的应用程序中:
BOOL bConsole = AllocConsole();
HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);
DWORD dwCharsWritten = 0;
string sS3Path = sCommandLine.substr(sCommandLine.find("S3://") + 5);
string sMessage = "S3 Path: " + sS3Path;
BOOL bWritten = WriteConsole(hOutput, sMessage.c_str(), sMessage.size(), &dwCharsWritten, NULL);
但是,php 没有看到他正在写入此控制台的信息。我们尝试了 exec 和 shell_exec 无济于事。
【问题讨论】: