[英]How to bind event to powershell command output stream?
使用PowerShell對象,我知道如何異步調用cmdlet並綁定在數據作為輸出到達時觸發的事件。
PowerShell PowerShellInstance = PowerShell.Create();
//Add necessary commands
PSDataCollection<PSObject> outputCollection = new PSDataCollection<PSObject>();
outputCollection.DataAdded += outputCollection_DataAdded;
IAsyncResult result = PowerShellInstance.BeginInvoke<PSObject, PSObject>(null, outputCollection);
void outputCollection_DataAdded(object sender, DataAddedEventArgs e)
{
//process output where sender is that outputCollection
}
如何以同步方式執行相同操作。 [注意:我應該使用Runspacepool,可以將其指定為PowerShellInstance的Runspacepool屬性]
為了實現我的目標,我應該使用Invoke方法的變體。 http://msdn.microsoft.com/en-us/library/hh459547%28v=vs.85%29.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.