我正在尝试做一个简单的项目来使用 PHP 脚本启动 VirtualBox VM。我的服务器是 win 7 Ultimate 并运行 php5.3 我正在使用 vboxmanage.exe 来启动服务器。cmd 在批处理文件中效果很好,或者直接输入到 cmd 行中。
当我使用:
exec("path to vboxmange.exe" startvm "vm name");
它不起作用。如果我将代码更改为:
exec(dir);
它工作正常。我做了一些搜索,每个人似乎都提到了 IIS_IUSRS 的权限。我将它设置为在 vboxmanage.exe 上读取并执行并尝试为 cmd.exe 执行此操作,但似乎无法让它允许我执行此操作,尽管它似乎没有必要,因为它可以运行其他 cmd,如 dir。
我的另一个理论是 exec 将整个 cmd 包装在 "" 中,当我尝试手动将其输入到 cmd 行时,这不起作用。我试图修剪它,但这不起作用,因为 exec 添加了它,所以我之前所做的任何事情都无法阻止它。
对另一种方法或它可能是什么的任何建议?