c++ cgi应用程序调用其他程序失败
我开发了一个在 Windows 和 Linux 下运行的 C++ CGI 程序。
该程序调用另一个程序,如下所示:
system("otherProgram.exe arguments");
我也尝试过:
spawnl(_P_WAIT, "otherProgram.exe", "argument1", NULL);
这在我的调试器和虚拟机中工作正常,但在我的测试服务器上它不起作用。 系统调用返回-1。
有什么想法吗?
I develop a c++ CGI program that runs under Windows and Linux.
This program calls another program like this:
system("otherProgram.exe arguments");
I also tried:
spawnl(_P_WAIT, "otherProgram.exe", "argument1", NULL);
This works fine in my debugger and in my Virtual Machine, but on my test server it doesn't work.
The system call returns -1.
Any ideas why?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这可能是权限问题。默认情况下,您的 CGI 应用程序将像无人用户一样运行。您要启动的程序应该可由“无人”执行。
This is likely a permissions issue. By default your CGI application will be run as if by user nobody. The program you want to launch should be executable by "nobody".
测试框中的PATH环境变量中的目录之一中是否包含“otherProgram.exe”?也就是说,您的操作系统知道如何找到该程序吗?
Is the directory containing "otherProgram.exe" in one of the directories in your PATH environment variable in the test box? That is, does your operating system know how to find that program?