Compartir a través de


CAtlDllModuleT (clase)

Esta clase representa el módulo de un archivo DLL.

Sintaxis

template <class T>
class ATL_NO_VTABLE CAtlDllModuleT : public CAtlModuleT<T>

Parámetros

T
La clase se deriva de CAtlDllModuleT.

Miembros

Constructores públicos

Nombre Descripción
CAtlDllModuleT::CAtlDllModuleT Constructor .
CAtlDllModuleT::~CAtlDllModuleT El destructor .

Métodos públicos

Nombre Descripción
CAtlDllModuleT::DllCanUnloadNow Comprueba si el archivo DLL se puede descargar.
CAtlDllModuleT::DllGetClassObject Devuelve un generador de clases.
CAtlDllModuleT::DllMain Punto de entrada opcional en una biblioteca de vínculos dinámicos (DLL).
CAtlDllModuleT::DllRegisterServer Agrega entradas al Registro del sistema para los objetos del archivo DLL.
CAtlDllModuleT::DllUnregisterServer Quita entradas del Registro del sistema para los objetos del archivo DLL.
CAtlDllModuleT::GetClassObject Devuelve un generador de clases. Se invoca mediante DllGetClassObject.

Comentarios

CAtlDllModuleT representa el módulo de una biblioteca de vínculos dinámicos (DLL) y proporciona funciones usadas por todos los proyectos DLL. Esta especialización de la clase CAtlModuleT incluye compatibilidad para el registro.

Para obtener más información sobre los módulos de ATL, consulte Clases de módulo de ATL.

Jerarquía de herencia

_ATL_MODULE

CAtlModule

CAtlModuleT

CAtlDllModuleT

Requisitos

Encabezado: atlbase.h

CAtlDllModuleT::CAtlDllModuleT

Constructor .

CAtlDllModuleT() throw();

CAtlDllModuleT::~CAtlDllModuleT

El destructor .

~CAtlDllModuleT() throw();

CAtlDllModuleT::DllCanUnloadNow

Comprueba si el archivo DLL se puede descargar.

HRESULT DllCanUnloadNow() throw();

Valor devuelto

Devuelve S_OK si el archivo DLL se puede descargar o S_FALSE si no se puede.

CAtlDllModuleT::DllGetClassObject

Devuelve el generador de clases.

HRESULT DllGetClassObject(
    REFCLSID rclsid,
    REFIID riid,
    LPVOID* ppv) throw();

Parámetros

rclsid
El CLSID del objeto que se va a crear.

riid
El IID de la interfaz solicitada.

ppv
Puntero al puntero de interfaz identificado por riid. Si el objeto no admite esta interfaz, ppv se establece como NULL.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

CAtlDllModuleT::DllMain

Punto de entrada opcional en una biblioteca de vínculos dinámicos (DLL).

BOOL WINAPI DllMain(DWORD dwReason, LPVOID /* lpReserved*/) throw();

Parámetros

dwReason
Si se establece en DLL_PROCESS_ATTACH, las llamadas de notificación DLL_THREAD_ATTACH y DLL_THREAD_DETACH están deshabilitadas.

lpReserved
Reservado.

Valor devuelto

Siempre devuelve TRUE.

Comentarios

Deshabilitar las llamadas de notificación DLL_THREAD_ATTACH y DLL_THREAD_DETACH puede ser una optimización útil para aplicaciones multiproceso que tienen muchos archivos DLL, que suelen crear y eliminar subprocesos y cuyos archivos DLL no necesitan estas notificaciones de nivel de subproceso de datos adjuntos o desasociación.

CAtlDllModuleT::DllRegisterServer

Agrega entradas al Registro del sistema para los objetos del archivo DLL.

HRESULT DllRegisterServer(BOOL bRegTypeLib = TRUE) throw();

Parámetros

bRegTypeLib
TRUE si se va a registrar la biblioteca de tipos. El valor predeterminado es TRUE.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

CAtlDllModuleT::DllUnregisterServer

Quita entradas del Registro del sistema para los objetos del archivo DLL.

HRESULT DllUnregisterServer(BOOL bUnRegTypeLib = TRUE) throw();

Parámetros

bUnRegTypeLib
TRUE si la biblioteca de tipos se va a quitar del Registro. El valor predeterminado es TRUE.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

CAtlDllModuleT::GetClassObject

Crea un objeto del elemento CLSID especificado.

HRESULT GetClassObject(
    REFCLSID rclsid,
    REFIID riid,
    LPVOID* ppv) throw();

Parámetros

rclsid
El CLSID del objeto que se va a crear.

riid
El IID de la interfaz solicitada.

ppv
Puntero al puntero de interfaz identificado por riid. Si el objeto no admite esta interfaz, ppv se establece como NULL.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

Comentarios

CAtlDllModuleT::DllGetClassObject llama a este método y se incluye por compatibilidad con versiones anteriores.

Consulte también

CAtlModuleT (clase)
CAtlExeModuleT (clase)
Información general sobre la clase
Clases de módulo