Metodo ICallFrame::Unmarshal (callobj.h)
Annulla il marshalling di un pacchetto di dati contenente i parametri [out] precedentemente sottoposto a marshalling di una chiamata a questo record di attivazione già esistente.
Sintassi
HRESULT Unmarshal(
[in] PVOID pBuffer,
[in] ULONG cbBuffer,
[in] RPCOLEDATAREP dataRep,
[in] CALLFRAME_MARSHALCONTEXT *pcontext,
[out] ULONG *pcbUnmarshalled
);
Parametri
[in] pBuffer
Puntatore al buffer contenente i valori [out] di cui è stato effettuato il marshalling.
[in] cbBuffer
Dimensioni del buffer, in byte.
[in] dataRep
Rappresentazione dei dati NDR con cui i dati sono stati sottoposto a marshalling. Per altre informazioni, vedere IRpcChannelBuffer::GetBuffer.
[in] pcontext
Puntatore alla struttura CALLFRAME_MARSHALCONTEXT contenente informazioni di contesto su come viene eseguito il nonmarshalling.
[out] pcbUnmarshalled
Riceve il numero di byte che sono stati annullati correttamente. Questo parametro viene restituito anche in situazioni di errore. Questo parametro è facoltativo e,
Valore restituito
Questo metodo può restituire i valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Metodo completato correttamente. |
|
Si è verificato un errore imprevisto. |
Commenti
Quando si annulla ilmarshalling, le versioni [in] dei parametri [in, out] vengono liberate e i puntatori di interfaccia vengono rilasciati e sostituiti con le versioni [out]. Tutti i parametri [in, out] e [out] verranno sempre impostati su valori [in], [in, out] e [out] correttamente non sincronizzati dai dati restituiti o su un valore inizializzato in modo esplicito su NULL. In caso di errore restituito, il chiamante in genere vuole chiamare ICallFrame::Free per pulire i valori che non sono NULL.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | callobj.h |