Compartilhar via


Método ICallUnmarshal::Unmarshal (callobj.h)

Transforma um pacote marshalado de dados de volta em um registro de ativação que pode ser invocado ou manipulado de alguma outra maneira.

Sintaxe

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
);

Parâmetros

[in] iMethod

O número do método. Se esse parâmetro for -1, o número do método será determinado a partir dos dados a serem não gravados.

[in] pBuffer

Um ponteiro para o buffer do qual o registro de ativação deve ser criado.

[in] cbBuffer

O tamanho do buffer, em bytes.

[in] fForceBufferCopy

Indica se o buffer deve ser copiado e retido (diferente de zero) ou se o buffer permanecerá válido (zero).

[in] dataRep

A representação de dados com a qual os dados foram empacotados.

[in] pcontext

Um ponteiro para uma estrutura CALLFRAME_MARSHALCONTEXT que contém informações sobre o contexto no qual a unmarshaling deve ser executada.

[out] pcbUnmarshalled

Um ponteiro para o número de bytes que foram unmarshaled com êxito.

[out] ppFrame

Um quadro de chamada associado à invocação umarshaled.

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

ICallUnmarshal