2.2.2.21 PIPELINE_STATE Message

The Data field of a PSRP message specifies a PIPELINE_STATE message when the MessageType field has a value of 0x00041006.

In messages of this type, the Data field is UTF-8 encoded XML, equivalent to the XML created by serializing a Complex Object (section 2.2.5.2) with the following extended properties (see section 2.2.5.2.9).

  • State information of the command pipeline

    • Property name: PipelineState.

    • Property type: PSInvocationState (see section 2.2.3.5).

  • Optional error information (included only if this message is triggered by an error).

    • Property name: ExceptionAsErrorRecord.

    • Property type: ErrorRecord (see section 2.2.3.15). The FullyQualifiedErrorId property SHOULD have a value of "RemotePSInvocationStateInfoReason".

The Complex Object described in this section SHOULD have no associated type names (section 2.2.5.2.3).

Example:

 <Obj RefId="0">
   <MS>
     <I32 N="PipelineState">3</I32>
     <Obj N="ExceptionAsErrorRecord" RefId="1">
       <TN RefId="0">
         <T>System.Management.Automation.ErrorRecord</T>
         <T>System.Object</T>
       </TN>
       <ToString>The pipeline has been stopped.</ToString>
       <MS>
         <Obj N="Exception" RefId="2">
           <TN RefId="1">
             <T>System.Management.Automation.PipelineStoppedException</T>
             <T>System.Management.Automation.RuntimeException</T>
             <T>System.SystemException</T>
             <T>System.Exception</T>
             <T>System.Object</T>
           </TN>
           <ToString>System.Management.Automation.PipelineStoppedException: The pipeline has been stopped._x000D__x000A_   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input, Hashtable errorResults, Boolean enumerate) in c:\e\win7_powershell\admin\monad\src\engine\pipeline.cs:line 586</ToString>
           <Props>
             <S N="ErrorRecord">The pipeline has been stopped.</S>
             <S N="StackTrace">   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input, Hashtable errorResults, Boolean enumerate) in c:\e\win7_powershell\admin\monad\src\engine\pipeline.cs:line 586</S>
             <S N="Message">The pipeline has been stopped.</S>
             <Obj N="Data" RefId="3">
               <TN RefId="2">
                 <T>System.Collections.ListDictionaryInternal</T>
                 <T>System.Object</T>
               </TN>
               <DCT />
             </Obj>
             <Nil N="InnerException" />
             <S N="TargetSite">System.Array SynchronousExecuteEnumerate(System.Object, System.Collections.Hashtable, Boolean)</S>
             <Nil N="HelpLink" />
             <S N="Source">System.Management.Automation</S>
           </Props>
         </Obj>
         <Nil N="TargetObject" />
         <S N="FullyQualifiedErrorId">PipelineStopped</S>
         <Nil N="InvocationInfo" />
         <I32 N="ErrorCategory_Category">14</I32>
         <S N="ErrorCategory_Activity"></S>
         <S N="ErrorCategory_Reason">PipelineStoppedException</S>
         <S N="ErrorCategory_TargetName"></S>
         <S N="ErrorCategory_TargetType"></S>
         <S N="ErrorCategory_Message">OperationStopped: (:) [], PipelineStoppedException</S>
         <B N="SerializeExtendedInfo">false</B>
       </MS>
     </Obj>
   </MS>
 </Obj>