【问题标题】:How to run a PowerShell script from a C# program?如何从 C# 程序运行 PowerShell 脚本?
【发布时间】:2018-10-10 14:18:50
【问题描述】:

我有一个 PowerShell 脚本,它接受用户输入作为用户凭据。它会提示一个窗口,要求输入用户名和密码。我想使用 C# 运行这个脚本。我该怎么做?

【问题讨论】:

  • 我们不是千里眼。请将您的代码作为文本复制/粘贴到问题中。选择代码文本并使用{} 图标。请制作一个 MCVE。 stackoverflow.com/help/mcve

标签: c# powershell


【解决方案1】:

您需要添加对System.Management.Automation 程序集* 和System.Collections.Objectmodel 的项目引用(用于执行输出)。

然后您需要为 PowerShell 类创建一个静态方法(注意:PowerShell 类实现了IDisposable,因此您需要将其包装在 using 块中):

using (PowerShell PowerShellInstance = PowerShell.Create())
    {
    }

使用添加脚本方法(PowerShellInstance.AddScript()) 添加您的脚本。

从那里您可以分别使用.Invoke().BeginInvoke() 同步或异步执行脚本。

在此处参考此 MSDN 博客:https://blogs.msdn.microsoft.com/kebab/2014/04/28/executing-powershell-scripts-from-c/

【讨论】:

    猜你喜欢
    • 2019-09-30
    • 2021-09-11
    • 1970-01-01
    • 2021-01-27
    • 2010-10-13
    • 2012-12-12
    • 1970-01-01
    • 2015-11-23
    相关资源
    最近更新 更多