0

ここに私のシナリオがあります: 私は add-data と add-bulkdata コマンドレットを持っています。どちらも から派生した C# で書かれておりpscmdlet、add-bulkdata は csv ファイルを取り、各行は add-data コマンドレットに送られます。add-data コマンドレットは終了例外をスローする可能性があります。それが発生した場合、add-bulkdata コマンドレットでそれを受け取る方法がわからない場合、bulkdata コマンドレットで を取得しますが、基になる add-data が設定したcommandinvocationexceptionがありません。ErrorRecordまた、pipeline.errors を照会しても、情報は得られません。

そのようなシナリオを処理する最良の方法は何ですか?

私の Add-BulkdataProcessRecord()関数は次のようになります。

InitialSessionState initial = InitialSessionState.CreateDefault();
initial.ImportPSModule(new[] { @"C:\mybinary.dll" });
Runspace runspace = RunspaceFactory.CreateRunspace(initial);
runspace.Open();

Pipeline pipeline = runspace.CreatePipeline();
pipeline.Commands.Add(cmd); //cmd is add-data cmdlet
pipeline.Commands.Add("out-string"); // I have tried with and without this

Collection<PSObject> results = pipeline.Invoke();
Collection<object> errors = pipeline.Error.ReadToEnd();
4

0 に答える 0