Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Библиотека активных шаблонов (ATL) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Этот класс представляет модуль для библиотеки DLL.
Синтаксис
template <class T>
class ATL_NO_VTABLE CAtlDllModuleT : public CAtlModuleT<T>
Параметры
T
Класс, производный от CAtlDllModuleT.
Участники
Открытые конструкторы
| Имя | Описание |
|---|---|
| CAtlDllModuleT::CAtlDllModuleT | Конструктор. |
| CAtlDllModuleT::~CAtlDllModuleT | Деструктор |
Открытые методы
| Имя | Описание |
|---|---|
| CAtlDllModuleT::D llCanUnloadNow | Проверяет, можно ли выгрузить библиотеку DLL. |
| CAtlDllModuleT::D llGetClassObject | Возвращает фабрику классов. |
| CAtlDllModuleT::D llMain | Необязательная точка входа в библиотеку динамических ссылок (DLL). |
| CAtlDllModuleT::D llRegisterServer | Добавляет записи в системный реестр для объектов в библиотеке DLL. |
| CAtlDllModuleT::D llUnregisterServer | Удаляет записи в системном реестре для объектов в библиотеке DLL. |
| CAtlDllModuleT::GetClassObject | Возвращает фабрику классов. Вызывается dllGetClassObject. |
Замечания
CAtlDllModuleT представляет модуль для библиотеки динамической компоновки (DLL) и предоставляет функции, используемые всеми проектами DLL. Эта специализация класса CAtlModuleT включает поддержку регистрации.
Дополнительные сведения о модулях в ATL см. в разделе "Классы модулей ATL".
Иерархия наследования
CAtlDllModuleT
Требования
Заголовок: atlbase.h
CAtlDllModuleT::CAtlDllModuleT
Конструктор.
CAtlDllModuleT() throw();
CAtlDllModuleT::~CAtlDllModuleT
Деструктор
~CAtlDllModuleT() throw();
CAtlDllModuleT::D llCanUnloadNow
Проверяет, можно ли выгрузить библиотеку DLL.
HRESULT DllCanUnloadNow() throw();
Возвращаемое значение
Возвращает S_OK, если библиотеку DLL можно выгрузить или S_FALSE, если она не удается.
CAtlDllModuleT::D llGetClassObject
Возвращает фабрику классов.
HRESULT DllGetClassObject(
REFCLSID rclsid,
REFIID riid,
LPVOID* ppv) throw();
Параметры
rclsid
CLSID создаваемого объекта.
riid
IID запрошенного интерфейса.
ppv
Указатель на указатель интерфейса, определяемый идентификатором riid. Если объект не поддерживает этот интерфейс, ppv имеет значение NULL.
Возвращаемое значение
Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.
CAtlDllModuleT::D llMain
Необязательная точка входа в библиотеку динамических ссылок (DLL).
BOOL WINAPI DllMain(DWORD dwReason, LPVOID /* lpReserved*/) throw();
Параметры
dwReason
Если задано значение DLL_PROCESS_ATTACH, вызовы уведомлений DLL_THREAD_ATTACH и DLL_THREAD_DETACH отключаются.
lpReserved
Зарезервировано.
Возвращаемое значение
Всегда возвращает значение TRUE.
Замечания
Отключение вызовов уведомлений DLL_THREAD_ATTACH и DLL_THREAD_DETACH может быть полезной оптимизацией для многопоточных приложений, которые имеют много библиотек DLL, которые часто создают и удаляют потоки, и библиотеки DLL которых не нуждаются в этих уведомлениях на уровне потока вложения и отсоединения.
CAtlDllModuleT::D llRegisterServer
Добавляет записи в системный реестр для объектов в библиотеке DLL.
HRESULT DllRegisterServer(BOOL bRegTypeLib = TRUE) throw();
Параметры
bRegTypeLib
Значение TRUE, если библиотека типов должна быть зарегистрирована. Значение по умолчанию — TRUE.
Возвращаемое значение
Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.
CAtlDllModuleT::D llUnregisterServer
Удаляет записи в системном реестре для объектов в библиотеке DLL.
HRESULT DllUnregisterServer(BOOL bUnRegTypeLib = TRUE) throw();
Параметры
bUnRegTypeLib
Значение TRUE, если библиотека типов должна быть удалена из реестра. Значение по умолчанию — TRUE.
Возвращаемое значение
Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.
CAtlDllModuleT::GetClassObject
Создает объект указанного CLSID.
HRESULT GetClassObject(
REFCLSID rclsid,
REFIID riid,
LPVOID* ppv) throw();
Параметры
rclsid
CLSID создаваемого объекта.
riid
IID запрошенного интерфейса.
ppv
Указатель на указатель интерфейса, определяемый идентификатором riid. Если объект не поддерживает этот интерфейс, ppv имеет значение NULL.
Возвращаемое значение
Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.
Замечания
Этот метод вызывается CAtlDllModuleT::D llGetClassObject и включен для обратной совместимости.
См. также
Класс CAtlModuleT
Класс CAtlExeModuleT
Общие сведения о классе
Классы модулей