Interface IGlobalInterfaceTable (objidl.h)

Permite que qualquer apartment em um processo obtenha acesso a uma interface implementada em um objeto em qualquer outro apartment no processo.

Herança

A interface IGlobalInterfaceTable herda da interface IUnknown . IGlobalInterfaceTable também tem estes tipos de membros:

Métodos

A interface IGlobalInterfaceTable tem esses métodos.

 
IGlobalInterfaceTable::GetInterfaceFromGlobal

Recupera um ponteiro para uma interface em um objeto utilizável pelo apartment de chamada. Essa interface deve estar registrada atualmente na tabela de interface global.
IGlobalInterfaceTable::RegisterInterfaceInGlobal

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.
IGlobalInterfaceTable::RevokeInterfaceFromGlobal

Revoga o registro de uma interface na tabela de interface global.

Comentários

A interface IGlobalInterfaceTable é uma maneira eficiente de um processo armazenar um ponteiro de interface em um local de memória que pode ser acessado de vários apartments dentro do processo, como variáveis de todo o processo e objetos agile (marshaled de thread livre) que contêm ponteiros de interface para outros objetos.

Um objeto Agile não está ciente da infraestrutura COM subjacente na qual ele é executado , em outras palavras, em qual apartment, contexto e thread ele está executando. O objeto pode estar mantendo interfaces específicas de um apartment ou contexto. Por esse motivo, chamar essas interfaces de onde quer que o componente agile esteja sendo executado pode nem sempre funcionar corretamente. A tabela de interface global evita esse problema garantindo que um proxy válido (ou ponteiro direto) para o objeto seja usado, com base no local em que o objeto agile está sendo executado.

A tabela de interface global não é portátil entre limites de processo ou computador, portanto, não pode ser usada no lugar do mecanismo normal de passagem de parâmetros.

Requisitos

   
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