C#中执行PowerShell 脚本
来源:互联网 发布:一键安装php集成环境 编辑:程序博客网 时间:2024/05/17 14:18
在C#中调用powershell脚本,需要引用的namespace如下:
using System.Management.Automation;
using System.Management.Automation.Runspaces;
添加System.Management.Automation.dll的引用,需要使用浏览,如果不知道位置,可以先在本机查找下。
代码如下:
//RunPowershell(@".\x.ps1", "");
private Collection<PSObject> 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>();
string[] tempParas = parameters.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < tempParas.Length; i += 2)
{
CommandParameter commandParm = new CommandParameter(tempParas[i], tempParas[i + 1]);
commandParameters.Add(commandParm);
scriptCommand.Parameters.Add(commandParm);
}
pipeline.Commands.Add(scriptCommand);
Collection<PSObject> psObjects;
psObjects = pipeline.Invoke();
if (pipeline.Error.Count > 0)
{
throw new Exception("脚本执行失败");
}
runspace.Close();
return psObjects;
}
powershell脚本执行的结果存在Collection<PSObject>集合中。
- C#中执行PowerShell 脚本
- C#中执行PowerShell 脚本
- powershell中禁止执行脚本解决办法
- Powershell中禁止执行脚本解决办法
- powershell中禁止执行脚本解决办法
- Powershell中禁止执行脚本解决办法(about_Execution_Policies)
- POWERSHELL脚本执行权限
- POWERSHELL脚本执行权限
- PowerShell因为在此系统中禁止执行脚本解决方法
- PowerShell中出现”禁止执行脚本“的解决方法
- PowerShell因为在此系统中禁止执行脚本解决方法
- PowerShell因为在此系统中禁止执行脚本解决方法
- PowerShell因为在此系统中禁止执行脚本解决方法
- C# 调用powershell 执行命令
- 用PowerShell来执行 交互式脚本文件
- 如何用计划任务执行powershell脚本
- Windows server 打开 powershell 执行脚本
- PowerShell-2.解决禁止本地执行脚本
- 一个用jquery写的判断div滚动条到底部的方法
- win7 、IIS7.0 搭建ASP网站
- C语言中关键字extern的一个作用(ZTE)
- LINQ XML的基本操作
- c++基础学习 - 宏的定义和调用
- C#中执行PowerShell 脚本
- 对象间通信机制-事件、回调等
- UML简介
- Struts2应用流程注解
- Android web开发快速入门
- 项目管理之开篇
- Struts2和Struts1的对比
- LINQ的文件目录操作
- (droid分享)新浪微博开发系列【三】之好友微博信息