如何使用管理员权限从php脚本打开批处理文件
我正在WAMP测试服务器上运行phpvirtualbox-5.0-4。 我想从php脚本运行以下批处理文件…需要以管理员权限打开Windows 7命令提示符(最好在后台模式下)如何使用管理员权限从php脚本打开批处理文件,php,windows,batch-file,Php,Windows,Batch File,我正在WAMP测试服务器上运行phpvirtualbox-5.0-4。 我想从php脚本运行以下批处理文件…需要以管理员权限打开Windows 7命令提示符(最好在后台模式下) 谢谢你的回答。你需要一些东西来启动脚本(比如CRON作业) 但是您应该按如下方式使用shell: echo shell_exec("cd C:\Program Files\Oracle\VirtualBox Vboxmanage setproperty websrvauthlibrary
谢谢你的回答。你需要一些东西来启动脚本(比如CRON作业) 但是您应该按如下方式使用
shell
:
echo shell_exec("cd C:\Program Files\Oracle\VirtualBox Vboxmanage
setproperty websrvauthlibrary null Vboxwebsrv.exe >null");
从文档中,请注意:
明白了强>
$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>";
应该可以工作,但要让它工作,apache服务器本身必须具有管理权限才能执行它。
简单地说,您必须以管理员身份启动apache服务器。(在windows中,以管理员身份运行选项)。那么PHP中的所有exec()命令都将具有管理权限。您是否尝试过此命令(我建议您也以管理员身份运行WAMP)?可能重复的
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()