微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

即使指定了 ExecutionPolicy

如何解决即使指定了 ExecutionPolicy

在我的应用安装程序 (InnoSetup) 中,我需要运行一些 powershell 脚本。

这是Pascal中的代码

Exec('cmd','/C powershell -F .\MyScript.ps1 -ExecutionPolicy Unrestricted','',SW_HIDE,ewWaitUntilTerminated,ResultCode);

基本上,它在命令提示符下运行以下命令:

powershell -F .\MyScript.ps1 -ExecutionPolicy Unrestricted

问题是我收到以下错误

MyScript.ps1 无法加载,因为在此系统上禁用了脚本的执行。

我知道我可以通过在运行我的脚本之前手动设置 ExecutionPolicy 来修复它,但我对 -ExecutionPolicy 参数的理解是它在脚本执行期间“覆盖”了执行策略。定位此参数时,我的目标是处理所有情况,因为我无法预测将安装我的应用的计算机的执行策略。

一些附加信息:

  • 安装程序以管理员身份运行
  • 看起来像在 x86 模式下运行的 inno setup
  • 我测试安装程序的计算机的执行策略设置为 Restricted(在 x86 和 x64 中)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。