添加对system.management.automation.dll的引用

简介:

不知道为什么system.management.automation.dll存放在一个隐藏文件夹里面,入下图,我把他拷贝到项目的ThirdParty目录下。

 

image

在项目目录选择对该DLL的引用。

image

 

添加命名空间

 

 

 

using System.Management.Automation.Runspaces;
using System.Management.Automation;
using System.Collections.ObjectModel;

 

 

封装调用过程

private void RunPowershell(string filePath, string parameters)
{
RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();
Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();
RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);
Pipeline pipeline = runspace.CreatePipeline();
Command scriptCommand = new Command(filePath);
Collection<CommandParameter> commandParameters = new Collection<CommandParameter>();
foreach (var parameter in parameters.Split(' '))
{
CommandParameter commandParm = new CommandParameter(null, parameter);
commandParameters.Add(commandParm);
scriptCommand.Parameters.Add(commandParm);
}
pipeline.Commands.Add(scriptCommand);
Collection<PSObject> psObjects;
psObjects = pipeline.Invoke();
}

客户端代码

RunPowershell(@".\x.ps1", "");

需要注意还是需要使用.\来调用脚本.




    本文转自Jake Lin博客园博客,原文链接:http://www.cnblogs.com/procoder/archive/2010/08/30/WPF-invoke-powershell.html,如需转载请自行联系原作者

相关文章
|
4月前
|
Java Maven C++
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
vb6.0中如何引用Microsoft Excel 16.0 Object Library?
将应用程序中的表格数据导入到Excel的“工具”
|
C++
VS找不到System.Web.Extensions.dll的解决办法
VS找不到System.Web.Extensions.dll的解决办法
219 0
|
缓存 Java
f you already have a JDK installed, define a JAVA HOME variable in Computer > System Properties > Sy
f you already have a JDK installed, define a JAVA HOME variable in Computer > System Properties > Sy
1136 0
f you already have a JDK installed, define a JAVA HOME variable in Computer > System Properties > Sy
myeclipse解决Fail to create the java Virtual Machine
今天在打开myeclipse的时候,就显示出 Fail to create the java Virtual Machine 这样的一个窗口出来。 解决的方案就是在myeclipse的安装目录下找到myeclipse.
1010 1
|
监控 程序员
一起谈.NET技术,System.Diagnostics命名空间里的Debug类和Trace类的用途【转】
  在 .NET 类库中有一个 System.Diagnostics命名空间,该命名空间提供了一些与系统进程、事件日志、和性能计数器进行交互的类库。当中包括了两个对开发人员而言十分有用的类Debug类和Trace类。
973 0
|
监控 程序员
System.Diagnostics命名空间里的“.NET研究”Debug类和Trace类的用途【转】
  在 .NET 类库中有一个 System.Diagnostics命名空间,该命名空间提供了一些与系统进程、事件日志、和性能计数器进行交互的类库。当中包括了两个对开发人员而言十分有用的类Debug类和Trace类。
1166 0
下一篇
DataWorks