3
我正在使用PowerShell v1.0(這是我不能使用2.0的要求),並且無法以編程方式捕獲警告流中的cmdlet輸出。如何在v1.0中以編程方式從PowerShell cmdlet獲取警告輸出?
在PowerShell 2.0中很容易:
var powerShell = PowerShell.Create();
powerShell.AddCommand(someCommand);
powerShell.Invoke();
foreach (var warning in powerShell.Streams.Warning) { ... }
然而,System.Management.Automation.PowerShell類不使用PowerShell版本1存在,似乎是確實存在的類不給接入到警告流。另外,警告流信息不在該cmdlet的標準輸出中。
謝謝! 山姆
非常感謝 - 這是一個很好的解決方案。使用自定義主機和用戶界面時,我可以在PSHostUserInterface上調用WriteWarningLine(消息)時記錄警告。 – Sam