我的问题是我可以从浏览器调用exe但无法通过url中传递的命令行获取query_string。
非常感谢任何帮助。
答案 0 :(得分:0)
您可以在C / C ++中编写一个使用PBNI执行PowerBuilder代码的FastCGI exe。
你是如何创建FastCGI exe的?
答案 1 :(得分:0)
也许使用Visual Studio编写它(该工具有很好的模板/向导用于制作IIS模块和处理程序,这是使用CGI的替代品。然后你可以使用.NET程序集PB程序但PB 11.5是.Net版本3(我想)所以请记住这一点。
我实际上使用IIS Modules/Handlers(在Visual Studio .NET C#中)编写了一个原始数据窗口,如代码生成器,并通过IIS中的设置使程序处理文件扩展为“.pb”。该程序解析数据对象代码并使用dataobject处理一些通用数据窗口的东西。这将是一个伟大的开源项目,只要它足够独特,它没有违反任何专利。
我尝试使用 PB12.5创建模块/处理程序并且没有成功,但CGI可能有效,但我还没有尝试过。
答案 2 :(得分:-1)
你需要将争论传递给exe。无法直接调用Web服务器中的EXE文件。您可以使用PHP或ASP.NET来完成此操作。
您需要做的就是收集通过此被调用网页发送的GET参数,然后启动外部进程。
在PHP中它将是$sAnswer = shellexec('path\\to\\some\\exe.exe param1 param2 ...');
而在C#中它将是Process.Start("cmd.exe", "/C path\\to\\some.exe param1 param2 ...");
您可以使用PHP在$_GET
中获取所有GET参数。如果使用C#,它将类似于request
(现在不确定使用ASP.NET获取请求对象的位置)。