Partilhar via


Funções globais de registo de servidores

Observação

A Active Template Library (ATL) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Estas funções fornecem suporte para registar e desregistar objetos do servidor no mapa de objetos.

Importante

As funções listadas na tabela seguinte não podem ser usadas em aplicações que sejam executadas no Windows Runtime.

Nome Description
AtlComModuleRegisterServer Esta função é chamada para registar todos os objetos no mapa de objetos.
AtlComModuleUnregisterServer Esta função é chamada para desregistar todos os objetos no mapa de objetos.
AtlComModuleRegisterClassObjects Esta função é chamada para registar objetos de classe.
AtlComModuleRevokeClassObjects Esta função é chamada para revogar objetos de classe de um módulo COM.
AtlComModuleGetClassObject Esta função é chamada para obter o objeto de classe.

Requerimentos

Cabeçalho: atlbase.h

AtlComModuleRegisterServer

Esta função é chamada para registar todos os objetos no mapa de objetos.

ATLINLINE ATLAPI AtlComModuleRegisterServer(
    _ATL_COM_MODULE* pComModule,
    BOOL bRegTypeLib,
    const CLSID* pCLSID);

Parâmetros

pComModule
Apontar para o módulo COM.

bRegTypeLib
TRUE se a biblioteca de tipos for registada.

pCLSID
Aponta para o CLSID do objeto a registar. Se for NULL, todos os objetos no mapa de objetos serão registados.

Valor de retorno

Devolve S_OK em caso de sucesso, ou um erro HRESULT em caso de falha.

Observações

AtlComModuleRegisterServer percorre o mapa de objetos gerado automaticamente pelo ATL e regista cada objeto no mapa. Se o pCLSID não for NULL, então apenas o objeto referido por pCLSID é registado; caso contrário, todos os objetos são registados.

Esta função é chamada por CAtlComModule::RegisterServer.

AtlComModuleUnregisterServer

Esta função é chamada para desregistar todos os objetos no mapa de objetos.

ATLINLINE ATLAPI AtlComModuleUnregisterServer(
    _ATL_COM_MODULE* pComModule,
    BOOL bUnRegTypeLib,
    const CLSID* pCLSID);

Parâmetros

pComModule
Apontar para o módulo COM.

bUnRegTypeLib
TRUE se a biblioteca de tipos for registada.

pCLSID
Aponta para o CLSID do objeto a ser não registado. Se for NULL, todos os objetos no mapa de objetos serão desregistados.

Valor de retorno

Devolve S_OK em caso de sucesso, ou um erro HRESULT em caso de falha.

Observações

AtlComModuleUnregisterServer percorre o mapa de objetos ATL e desativa o registo de cada objeto no mapa. Se o pCLSID não for NULL, então apenas o objeto referido por pCLSID não está registado; caso contrário, todos os objetos não estão registados.

Esta função é chamada por CAtlComModule::UnregisterServer.

AtlComModuleRegisterClassObjects

Esta função é chamada para registar objetos de classe.

ATLINLINE ATLAPI AtlComModuleRegisterClassObjects(
    _ATL_COM_MODULE* pComModule,
    DWORD dwClsContext,
    DWORD dwFlags);

Parâmetros

pComModule
Apontar para o módulo COM.

dwClsContext
Especifica o contexto em que o objeto de classe deve ser executado. Os valores possíveis são CLSCTX_INPROC_SERVER, CLSCTX_INPROC_HANDLER ou CLSCTX_LOCAL_SERVER. Consulte CLSCTX para mais detalhes.

dwBandeiras
Determina os tipos de ligação ao objeto de classe. Os valores possíveis são REGCLS_SINGLEUSE, REGCLS_MULTIPLEUSE ou REGCLS_MULTI_SEPARATE. Consulte o REGCLS para mais detalhes.

Valor de retorno

Devolve S_OK em caso de sucesso, ou um erro HRESULT em caso de falha.

Observações

Esta função auxiliar é utilizada pelo CComModule::RegisterClassObjects (obsoleto no ATL 7.0) e CAtlExeModuleT::RegisterClassObjects.

AtlComModuleRevokeClassObjects

Esta função é chamada para remover a classe fábrica/fábricas da Tabela de Objetos Em Execução.

ATLINLINE ATLAPI AtlComModuleRevokeClassObjects(_ATL_COM_MODULE* pComModule);

Parâmetros

pComModule
Apontar para o módulo COM.

Valor de retorno

Devolve S_OK em caso de sucesso, ou um erro HRESULT em caso de falha.

Observações

Esta função auxiliar é utilizada pelo CComModule::RevokeClassObjects (obsoleto no ATL 7.0) e CAtlExeModuleT::RevokeClassObjects.

AtlComModuleGetClassObject

Esta função é chamada para devolver a fábrica de classes.

ATLINLINE ATLAPI AtlComModuleGetClassObject(
    _ATL_COM_MODULE* pComModule,
    REFCLSID rclsid,
    REFIID riid,
    LPVOID* ppv);

Parâmetros

pComModule
Apontar para o módulo COM.

RCLSID
O CLSID do objeto a ser criado.

riid
O IID da interface solicitada.

PPV
Um ponteiro para o ponteiro de interface identificado por riid. Se o objeto não suportar esta interface, o ppv é definido como NULL.

Valor de retorno

Devolve S_OK em caso de sucesso, ou um erro HRESULT em caso de falha.

Observações

Esta função auxiliar é utilizada por CComModule::GetClassObject (obsoleto no ATL 7.0) e CAtlDllModuleT::GetClassObject.

Consulte também

Funções