CAtlModuleT 类

此类实现 ATL 模块。

语法

template <class T>
class ATL_NO_VTABLE CAtlModuleT : public CAtlModule

参数

T
你的类派生自 CAtlModuleT

成员

公共构造函数

名称 描述
CAtlModuleT::CAtlModuleT 构造函数。

公共方法

名称 描述
CAtlModuleT::InitLibId 初始化包含当前模块 GUID 的数据成员。
CAtlModuleT::RegisterAppId 将 EXE 添加到注册表。
CAtlModuleT::RegisterServer 将服务添加到注册表。
CAtlModuleT::UnregisterAppId 从注册表中删除 EXE。
CAtlModuleT::UnregisterServer 从注册表中删除服务。
CAtlModuleT::UpdateRegistryAppId 更新注册表中的 EXE 信息。

备注

派生自 CAtlModuleCAtlModuleT 执行可执行文件 (EXE) 或服务 (EXE) ATL 模块。 可执行文件模块是本地进程外服务器,而服务模块是 Windows 启动时在后台运行的 Windows 应用程序。

CAtlModuleT 支持模块的初始化、注册和取消注册。

继承层次结构

_ATL_MODULE

CAtlModule

CAtlModuleT

要求

标头:atlbase.h

CAtlModuleT::CAtlModuleT

构造函数。

CAtlModuleT() throw();

备注

调用 CAtlModuleT::InitLibId

CAtlModuleT::InitLibId

初始化包含当前模块 GUID 的数据成员。

static void InitLibId() throw();

备注

由构造函数 CAtlModuleT::CAtlModuleT 调用。

CAtlModuleT::RegisterAppId

将 EXE 添加到注册表。

HRESULT RegisterAppId() throw();

返回值

如果成功,则返回 S_OK;否则返回错误 HRESULT。

CAtlModuleT::RegisterServer

将服务添加到注册表。

HRESULT RegisterServer(
    BOOL bRegTypeLib = FALSE,
    const CLSID* pCLSID = NULL) throw();

参数

bRegTypeLib
如果要注册类型库,则为 TRUE。 默认值是 FALSE。

pCLSID
指向要注册的对象的 CLSID 的指针。 如果为 NULL(默认值),则注册对象映射中的所有对象。

返回值

如果成功,则返回 S_OK;否则返回错误 HRESULT。

CAtlModuleT::UnregisterAppId

从注册表中删除 EXE。

HRESULT UnregisterAppId() throw();

返回值

如果成功,则返回 S_OK;否则返回错误 HRESULT。

CAtlModuleT::UnregisterServer

从注册表中删除服务。

HRESULT UnregisterServer(
    BOOL bUnRegTypeLib,
    const CLSID* pCLSID = NULL) throw();

参数

bUnRegTypeLib
如果还要取消注册类型库,则为 TRUE。

pCLSID
指向要取消注册的对象的 CLSID。 如果为 NULL(默认值),则取消注册对象映射中的所有对象。

返回值

如果成功,则返回 S_OK;否则返回错误 HRESULT。

CAtlModuleT::UpdateRegistryAppId

更新注册表中的 EXE 信息。

static HRESULT WINAPI UpdateRegistryAppId(BOOL /* bRegister*/) throw();

参数

bRegister
保留。

返回值

如果成功,则返回 S_OK;否则返回错误 HRESULT。

另请参阅

CAtlModule 类
类概述
Module 类