Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从C#程序运行PowerShell脚本?_C#_Powershell - Fatal编程技术网

如何从C#程序运行PowerShell脚本?

如何从C#程序运行PowerShell脚本?,c#,powershell,C#,Powershell,我有一个PowerShell脚本,它接受用户输入作为用户凭据。它会提示一个窗口,询问用户名和密码。我想用C#运行这个脚本。如何执行此操作?您需要将项目引用添加到System.Management.Automationassembly*和System.Collections.Objectmodel(用于执行输出) 然后,您需要为PowerShell类创建一个静态方法(注意:PowerShell类实现了IDisposable,因此您需要将其包装到using块中): 使用添加脚本方法(PowerShe

我有一个PowerShell脚本,它接受用户输入作为用户凭据。它会提示一个窗口,询问用户名和密码。我想用C#运行这个脚本。如何执行此操作?

您需要将项目引用添加到
System.Management.Automation
assembly*和
System.Collections.Objectmodel
(用于执行输出)

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

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

在那里,您可以使用
.Invoke()
.BeginInvoke()
同步或异步地执行脚本


请在此处参考MSDN博客:

我们不是透视者。请将您的代码以文本形式复制/粘贴到问题中。选择代码文本并使用
{}
图标。请做一个MCVE。
using (PowerShell PowerShellInstance = PowerShell.Create())
    {
    }