Condividi tramite


Metodo ICallFrame::GetMarshalSizeMax (callobj.h)

Recupera un limite superiore sul numero di byte necessari per effettuare il marshalling del frame di chiamata.

In genere un proxy di interfaccia chiama questo metodo per apprendere quanto è necessario un buffer, alloca il buffer e quindi chiama il metodo Marshal per eseguire il marshalling.

Sintassi

HRESULT GetMarshalSizeMax(
  [in]  CALLFRAME_MARSHALCONTEXT *pmshlContext,
  [in]  MSHLFLAGS                mshlflags,
  [out] ULONG                    *pcbBufferNeeded
);

Parametri

[in] pmshlContext

Puntatore alla struttura CALLFRAME_MARSHALCONTEXT contenente informazioni di contesto sulla modalità di svolgimento del marshalling.

[in] mshlflags

Indica se i dati da sottoporre a marshalling devono essere trasmessi al processo client, ovvero il caso normale, o scritti in una tabella globale, in cui possono essere recuperati da più client. Per un elenco di valori, vedere l'enumerazione MSHLFLAGS .

[out] pcbBufferNeeded

Puntatore alla dimensione del buffer, in byte, che sarà necessario per effettuare il marshalling del frame di chiamata.

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

ICallFrame