Método IGlobalInterfaceTable::RegisterInterfaceInGlobal (objidl.h)

Registra a interface especificada em um objeto que reside em um apartamento de um processo como uma interface global, permitindo que outros apartments acessem essa interface.

Sintaxe

HRESULT RegisterInterfaceInGlobal(
  [in]  IUnknown *pUnk,
  [in]  REFIID   riid,
  [out] DWORD    *pdwCookie
);

Parâmetros

[in] pUnk

Um ponteiro de interface do tipo riid no objeto no qual a interface a ser registrada como global é implementada.

[in] riid

A IID da interface a ser registrada como global.

[out] pdwCookie

Um identificador que pode ser usado por outro apartment para obter acesso a um ponteiro para a interface que está sendo registrada. O valor de um cookie inválido é 0.

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_INVALIDARG
Um ou mais parâmetros são inválidos.

Comentários

Chamado no apartamento no qual um objeto reside para registrar uma das interfaces do objeto como uma interface global. Esse método fornece um ponteiro para um cookie que outros apartments podem usar em uma chamada para o método GetInterfaceFromGlobal para obter um ponteiro para essa interface.

O ponteiro de interface pode ser um ponteiro para um objeto em processo ou pode ser um ponteiro para um proxy para um objeto que reside em outro apartment, em outro processo ou em outro computador.

O apartment que chama esse método deve permanecer vivo até a chamada correspondente para RevokeInterfaceFromGlobal.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho objidl.h (inclua ObjIdl.h)

Confira também

Iglobalinterfacetable