我正在WAMP测试服务器上运行phpvirtualbox-5.0-4。我想从php脚本运行以下批处理文件。。。。需要这样以管理员权限打开Windows7命令提示符(最好在后台模式)
cd /
cd C:'Program Files'Oracle'VirtualBox
Vboxmanage setproperty websrvauthlibrary null
Vboxwebsrv.exe >null
谢谢你的回答。
您需要一些东西来启动脚本(比如CRON作业)。
但是您应该使用shell
命令,如下所示:
echo shell_exec("cd C:'Program Files'Oracle'VirtualBox Vboxmanage
setproperty websrvauthlibrary null Vboxwebsrv.exe >null");
从文件中,请注意:
Note: This function is disabled when PHP is running in safe mode.
明白了
$test = shell_exec('C:''WINDOWS''system32''cmd.exe /c 2>&1 "H:''wamp''www''sito2''files batch''fare partire phpVirtualBox.bat"');
echo "<pre>$test</pre>";
和我的批处理文件:
@ECHO OFF
::Test If script has Admin Priviledges/is elevated
AT > NUL
IF %ERRORLEVEL% EQU 0 (
ECHO OK ! Command prompt launched...you are Administrator !
) ELSE (
ECHO you are NOT Administrator. Exiting...
PING 127.0.0.1 > NUL 2>&1
EXIT /B 1
)
cd /
cd C:'Program Files'Oracle'VirtualBox'Vboxmanage setproperty websrvauthlibrary null
C:'Program Files'Oracle'VirtualBox'Vboxwebsrv.exe >null
结果!!!
shell_exec()
应该可以工作,但要使其工作,apache服务器本身必须具有执行它的管理权限。简单地说,您必须以管理员身份启动apache服务器。(在窗口中,以管理员身份运行选项)。然后,PHP中的所有exec()命令都将具有管理权限。