我想从PHP
以管理员身份运行PowerShell脚本。我使用下面的命令来运行脚本,但它不会以管理员身份执行。
任何帮助如何使这个工作? 我使用的是旧版XAMP。
$output=shell_exec('C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command E:\XAMPP_DV\htdocs\project\lib\pwdreset.ps1 ' . $user . " " . $pwd);
答案 0 :(得分:0)
我要走出困境并假设你没有正确设置政策:
$output = shell_exec('powershell -ExecutionPolicy Bypass -NoProfile -File "E:\XAMPP_DV\htdocs\project\lib\pwdreset.ps1" ' . $user . ' ' . $pwd);
在几乎所有情况下,powershell.exe
的路径都在PATH环境变量中,默认情况下ExecutionPolicy
设置为RemoteSigned
。
答案 1 :(得分:0)
从Microsoft TechNet建议以下解决方案
$output=shell_exec('powershell -noprofile -command "&{ start-process powershell -ArgumentList -noprofile -file E:\XAMPP_DV\htdocs\project\lib\pwdreset.ps1 ' . $user . ' ' . $pwd . ' -verb RunAs}"');