Método ICallFrame::GetMarshalSizeMax (callobj.h)

Recupera um limite superior no número de bytes necessários para realizar marshaling do quadro de chamada.

Normalmente, um proxy de interface chama esse método para saber o tamanho necessário de um buffer, aloca o buffer e, em seguida, chama o método Marshal para realizar o marshaling.

Sintaxe

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

Parâmetros

[in] pmshlContext

Um ponteiro para a estrutura CALLFRAME_MARSHALCONTEXT que contém informações de contexto sobre como o marshalling é realizado.

[in] mshlflags

Indica se os dados a serem empacotados devem ser transmitidos de volta para o processo do cliente - o caso normal - ou gravados em uma tabela global, em que eles podem ser recuperados por vários clientes. Para obter uma lista de valores, consulte a enumeração MSHLFLAGS .

[out] pcbBufferNeeded

Um ponteiro para o tamanho do buffer, em bytes, que será necessário para realizar marshaling do quadro de chamada.

Retornar valor

Esse método pode retornar os valores a seguir.

Código de retorno Descrição
S_OK
O método foi concluído com sucesso.
E_UNEXPECTED
Ocorreu um erro inesperado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho callobj.h

Confira também

ICallFrame