问题  PowerShell的问题

[email protected]

新成员
已加入
2016年12月2日
留言内容
1
编程经验
Beginner
尝试不同的方式执行命令"get-wbsummary"从C#中的PowerShell。
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Text;
使用System.Threading.Tasks;
使用System.Windows;
使用System.Windows.Controls;
使用System.Windows.Data;
使用System.Windows.Documents;
使用System.Windows.Input;
使用System.Windows.Media;
使用System.Windows.Media.Imaging;
使用System.Windows.Navigation;
使用System.Windows.Shapes;
使用System.Collections.ObjectModel;
使用System.Management.Automation;
使用System.Management.Automation.Runspaces;


命名空间AgentBackupIoA
{
/// <summary>
/// MainWindow.xaml的交互逻辑
/// </summary>
公共局部类MainWindow:Window
{
public MainWindow()
{
InitializeComponent();
MessageBox.Show(RunScript("Get-Wbsummary"));
}

私有字符串RunScript(string scriptText)
{
//创建Powershell运行空间
运行空间运行空间= RunspaceFactory.CreateRunspace();

// open it
runspace.Open();

//创建管道并向其提供脚本文本
管道管道= runspace.CreatePipeline();
pipeline.Commands.AddScript("获取模块WindowsServerBackup");
pipeline.Commands.AddScript(scriptText);

//添加一个额外的命令以将脚本输出对象转换为格式正确的字符串
//删除此行以获取脚本返回的实际对象。例如,脚本
// "Get-Process"返回System.Diagnostics.Process实例的集合。
pipeline.Commands.Add("Out-String");

//执行脚本
Collection<PSObject>结果= pipeline.invoke();

//关闭运行空间
runspace.Close();

//将脚本结果转换为单个字符串
StringBuilder stringBuilder = new StringBuilder();
foreach(结果中为PSObject obj)
{
stringBuilder.AppendLine(obj.ToString());
}

返回stringBuilder.ToString();
}
}
}




但是我不想工作。我究竟做错了什么 ?
System.Management.Automation.dll中发生类型为'System.Management.Automation.CommandNotFoundException'的异常,但未在用户代码中处理

附加信息:术语“ Get-Wbsummary”未被识别为cmdlet,函数,脚本文件或可运行程序的名称。检查名称的拼写,或者是否包含路径,请验证路径是否正确,然后重试。


我浏览了许多示例,但我不知道。对不起,我的英语不好。
 
最佳 底部