Função CoGetStdMarshalEx (combaseapi.h)
Cria um marshaler padrão agregado para uso com manipuladores leves do lado do cliente.
Sintaxe
HRESULT CoGetStdMarshalEx(
[in] LPUNKNOWN pUnkOuter,
[in] DWORD smexflags,
[out] LPUNKNOWN *ppUnkInner
);
Parâmetros
[in] pUnkOuter
Um ponteiro para o IUnknown controlador.
[in] smexflags
Um dos dois valores que indica se o marshaler padrão agregado está no lado do cliente ou no lado do servidor. Esses sinalizadores são definidos na enumeração STDMSHLFLAGS .
Valor | Significado |
---|---|
|
Indica um marshaler padrão agregado do lado do servidor. |
|
Indica um marshaler padrão agregado do lado do cliente (manipulador). |
[out] ppUnkInner
No retorno bem-sucedido, o endereço do ponteiro para a interface IUnknown no marshaler padrão agregado recém-criado. Se ocorrer um erro, esse valor será NULL.
Valor retornado
Essa função retorna S_OK.
Comentários
O servidor chama CoGetStdMarshalEx passando o sinalizador SMEXF_SERVER. Isso cria um marshaler padrão do lado do servidor (conhecido como gerenciador de stub). O manipulador chama CoGetStdMarshalEx passando o sinalizador SMEXF_HANDLER. Isso cria um marshaler padrão do lado do cliente (conhecido como gerenciador de proxy). Observe que, ao chamar essa função, o manipulador deve passar o controle original desconhecido que foi passado para o manipulador quando o manipulador foi criado. Esse será o sistema implementado controlando desconhecido. A falha ao passar o IUnknown correto resulta em um erro retornado. Em caso de êxito, o ppUnkInner retornado é o controle desconhecido do objeto interno. O servidor e o manipulador devem manter esse ponteiro e podem usá-lo para chamar IUnknown::QueryInterface para a interface IMarshal .
Requisitos
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 | combaseapi.h (inclua Objbase.h) |
Biblioteca | Ole32.lib |
DLL | Ole32.dll |