Stato della pipe
Nel server il compilatore MIDL crea una variabile di stato che coordina le procedure push, pull e alloc. Sul lato client, lo sviluppatore deve creare la variabile di stato . Pertanto, la variabile di stato è locale a entrambi i lati, ovvero il client e il server mantengono il proprio stato della pipe. Il codice stub del server gestisce la variabile di stato nel server. Non è consigliabile tentare di modificarlo direttamente. Il client deve inizializzare i campi nella struttura di controllo della pipe e mantenere la variabile di stato . Usa la variabile di stato per identificare dove individuare o inserire i dati.
La variabile di stato client può essere semplice come handle di file, se si trasferiscono dati da un file a un altro. Può anche essere un intero che punta a un elemento in una matrice. In alternativa, è possibile definire una struttura di stato abbastanza complessa per eseguire attività aggiuntive, ad esempio coordinare le routine push e pull su un parametro [in, out] .