Condividi tramite


Metodo ICallUnmarshal::Unmarshal (callobj.h)

Trasforma un pacchetto di dati sottoposto a marshalling in un record di attivazione che può quindi essere richiamato o modificato in altro modo.

Sintassi

HRESULT Unmarshal(
  [in]  ULONG                    iMethod,
  [in]  PVOID                    pBuffer,
  [in]  ULONG                    cbBuffer,
  [in]  BOOL                     fForceBufferCopy,
  [in]  RPCOLEDATAREP            dataRep,
  [in]  CALLFRAME_MARSHALCONTEXT *pcontext,
  [out] ULONG                    *pcbUnmarshalled,
  [out] ICallFrame               **ppFrame
);

Parametri

[in] iMethod

Numero del metodo. Se questo parametro è -1, il numero del metodo verrà determinato dai dati da annullare.

[in] pBuffer

Puntatore al buffer da cui creare il record di attivazione.

[in] cbBuffer

Dimensioni del buffer, in byte.

[in] fForceBufferCopy

Indica se il buffer deve essere copiato e conservato (diverso da zero) o il buffer rimarrà valido (zero).

[in] dataRep

Rappresentazione dei dati con cui è stato eseguito il marshalling dei dati.

[in] pcontext

Puntatore a una struttura di CALLFRAME_MARSHALCONTEXT che contiene informazioni sul contesto in cui eseguire l'annullamento delmarshaling.

[out] pcbUnmarshalled

Puntatore al numero di byte che sono stati annullati correttamente.

[out] ppFrame

Frame di chiamata associato alla chiamata umarshaled.

Valore restituito

Questo metodo può restituire i valori seguenti.

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_UNEXPECTED
Si è verificato un errore imprevisto.

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

Vedi anche

ICallUnmarshal