【问题标题】:How to open a batch file from php script with administrator privileges如何使用管理员权限从 php 脚本打开批处理文件
【发布时间】:2016-01-06 15:53:58
【问题描述】:

我正在我的 WAMP 测试服务器上运行 phpvirtualbox-5.0-4。 我想从 php 脚本运行以下批处理文件....需要以管理员权限打开 Windows 7 命令提示符(最好在后台模式下)

cd /
cd C:\Program Files\Oracle\VirtualBox
Vboxmanage setproperty websrvauthlibrary null
Vboxwebsrv.exe >null

感谢您的任何回答。

【问题讨论】:

标签: php windows batch-file


【解决方案1】:

您将需要一些东西来启动脚本(例如 CRON 作业)。

但是你应该使用shell command 如下:

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.

【讨论】:

    【解决方案2】:

    知道了!!!!

    $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
    

    the result !!!

    【讨论】:

      【解决方案3】:
      shell_exec()
      

      应该可以工作,但要使其工作,apache 服务器本身必须具有管理权限才能执行它。 简单地说,你必须以管理员身份启动 apache 服务器。 (在 Windows 中,以管理员身份运行选项)。那么 PHP 中的所有 exec() 命令都将具有管理权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-07-24
        • 2013-05-29
        • 2015-03-25
        • 1970-01-01
        • 2011-08-31
        • 2017-12-01
        • 2015-05-21
        • 2013-08-05
        相关资源
        最近更新 更多