关于这个问题,有各种各样的线索,但似乎没有什么对我的具体案件有帮助。我通常不是Windows用户,所以我可能遗漏了一些东西。在
我需要从一个Windows(2016)powershell脚本运行一系列带参数的python脚本。python脚本必须以管理员身份运行(因为它们需要访问本地注册表)。在
根据其他相关主题的文章,我已经得到了如下结论:if (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) { Start-Process powershell.exe "-NoProfile -ExecutionPolicy Unrestricted -File `"$PSCommandPath`"" -Verb RunAs; exit }
& python.exe V:Scripts\script.py --hostnames del rodney
这将以管理员身份启动子shell,但在运行python脚本时,该子shell失败。在我有机会看到错误消息之前,subshell就消失了,但是powershell事件日志显示“Engine state is changed from Available to Stopped”(引擎状态已从可用更改为已停止),我认为这是权限错误。在
如果直接从管理员powershell运行,python脚本可以正常工作。我很感激你的建议。在