【发布时间】:2021-10-13 17:48:16
【问题描述】:
我知道这个问题被问了很多。但是没有一个解决方案对我有帮助。
我的脚本不会运行。 当我使用 Powershell 执行它时,它可以工作。 但不是用这个 C# 代码:
using (PowerShell ps = PowerShell.Create())
{
ps.AddScript(@"& 'MyPathToTheScript'");
ps.Invoke();
}
如您所见,我尝试了 AddScript 和 AddCommand,但都无法运行我的脚本。 我按照我在 Microsoft Docs 上看到的说明进行操作:
除了我不需要任何参数:)
编辑#1
我的 PowerShell 脚本,需要以管理员身份运行。这可能是问题吗?脚本运行,但由于“访问被拒绝”而引发错误?
我可以从 C# 中执行此操作还是必须在脚本中添加它?
感谢您的帮助:)
【问题讨论】:
-
如果您有权限问题,使用非常简单的脚本进行测试可能会很有用,这样您就只测试 c# - powershell 集成。
-
我找到了解决方案,这是因为 Powershell 没有以 64 位运行。现在它起作用了。我会发布解决方案
标签: c# powershell invoke execute