我真的需要一些问题的帮助 . 我正在尝试使用直接集成在PHP上的exec()PHP函数,但它不起作用 .
我试过这个:
$directory = "C:/wamp/www/ADA-WEB/Conversion";
$file ="/main.exe";
chmod($directory, 0600);
exec($directory.$file);
但没有任何事情发生 . 所以,我试图看看Apache Log上是否报告了错误,这就是出现的情况:
引发ADA.IO_EXCEPTIONS.NAME_ERROR:convertir \ EXPORT.DAT:没有这样的文件或目录
这是ADA可能引发的典型错误 . 但我不明白为什么会产生这个错误 . 似乎PHP在随机文件夹(可能是临时文件夹)上运行该文件 . 当我直接在Windows上启动exe时,我没有这种问题 .
如果你应该帮忙......
非常感谢 .
萨科
3 回答
您可以考虑在启动ada应用程序之前使用http://php.net/manual/fr/function.chdir.php . 这样,您可以控制运行二进制文件时使用的当前目录
好吧,我改变了主意,转向了另一个方向..
经过对此问题的更多搜索之后,问题似乎不是因为exec()函数,而是因为Windows不允许通过导航器执行程序 .
谢谢你的回答 .
萨科
可能有其他方法来解决这个问题 . 回避你所面临的限制(显然是Windows) .
如果你're driving an Ada program through a web-based interface, the Ada Web Server (AWS) toolkit is a way to build a webserver right into your program - it'易于使用,而且速度也快 . 显然还有一些名为AWS的工具包,但我的意思是here:,带有介绍here . 有关该工具包的其他一些观点,另请参见StackOverflow question .