Partilhar via


Método FtmBase::MarshalInterface

Grava os dados necessários para inicializar um objeto de proxy no processo do cliente em um fluxo.

STDMETHODIMP MarshalInterface(
   __in IStream *pStm,
   __in REFIID riid,
   __in_opt void *pv,
   __in DWORD dwDestContext,
   __reserved void *pvDestContext,
   __in DWORD mshlflags
) override;

Parâmetros

  • pStm
    Ponteiro para o fluxo a ser usado durante o empacotamento.

  • riid
    Referência ao identificador da interface a ser empacotado.Esta interface deve ser derivada da interface IUnknown.

  • pv
    Ponteiro para o ponteiro de interface a ser empacotado; pode ser NULL se o chamador não tem um ponteiro para a interface desejada.

  • dwDestContext
    Contexto de destino onde a interface especificada deve ser desempacotada.

    Especifique um ou mais valores de enumeração MSHCTX.

    Unmarshaling pode ocorrer em outro compartimento do processo atual (MSHCTX_INPROC) ou em outro processo no mesmo computador que o processo atual (MSHCTX_LOCAL).

  • pvDestContext
    Reservado para uso futuro; deve ser zero.

  • mshlflags
    Especifica se os dados a ser empacotado deve ser transmitido de volta para o processo do cliente — o caso típico — ou gravado em uma tabela global, onde podem ser recuperado por vários clientes.

Valor de retorno

  • S_OK
    O ponteiro de interface foi empacotado com êxito.

  • E_NOINTERFACE
    Não há suporte para a interface especificada.

  • STG_E_MEDIUMFULL
    O fluxo está cheio.

  • E_FAIL
    A operação falhou.

Requisitos

Cabeçalho: ftm.h

Namespace: Microsoft::WRL

Consulte também

Referência

Classe FtmBase