Class 表
Class 表包含必须产品播发过程中生成的 COM 服务器相关信息。 每一行可能会生成一组注册表项和值。 此表中包含关联的 ProgId 信息。
Class 表包含以下列。
列 | 类型 | 密钥 | Nullable |
---|---|---|---|
CLSID | GUID | Y | N |
上下文 | Identifier | Y | N |
Component_ | Identifier | Y | N |
ProgId_Default | 文本 | N | Y |
说明 | 文本 | N | Y |
AppId_ | GUID | N | Y |
FileTypeMask | 文本 | N | Y |
Icon_ | Identifier | N | Y |
IconIndex | 整数 | N | Y |
DefInprocHandler | Filename | N | Y |
参数 | Formatted | N | Y |
Feature_ | Identifier | N | N |
特性 | 整数 | N | Y |
-
CLSID
-
COM 服务器的类标识符 (ID)。
-
Context
-
此服务器的服务器上下文。 为 CLSID 键输入以下值之一。
CLSID KEY 说明 LocalServer 指定 16 位本地服务器应用程序的完整路径。 LocalServer32 指定 32 位本地服务器应用程序的完整路径。 InprocServer 指定进程内服务器 DLL 的路径。 InprocServer32 指定 32 位进程内服务器的路径和线程模型。 -
Component_
-
Component 表的外部键,用于指定其密钥文件提供 COM 服务器的组件。
-
ProgId_Default
-
与此类 ID 关联的默认程序 ID。 此列是 ProgID 表的外键。
-
Description
-
与类 ID 和程序 ID 关联的本地化说明。
-
AppId_
-
FileTypeMask
-
包含 HKCR(此 CLSID)键的信息。
如果存在多个模式,则必须用分号分隔,并生成数字子项:0、1、2...有关此功能的详细信息,请参阅 GetClassFile。
-
Icon_
-
提供与此 CLSID 关联的图标的文件。 安装程序在与 ProgId 关联的 DefaultIcon 键下写入此列中的条目。 如果不为 null,则该列是 Icon 表中的外键。 如果为 null,则 COM 服务器将提供图标资源。 播发的文件关联和快捷方式需要此列中具有非 null 值才能正确显示。
-
IconIndex
-
图标文件中的图标索引。 此项可为 null。
仅限非负数。
-
DefInprocHandler
-
此字段指定在 Context 字段中指定的服务器上下文的默认进程内处理程序。
如果 Context 字段中显示 InprocServer 或 InprocServer CLSID 键,则此字段必须为 Null。
如果 LocalServer 或 LocalServer32 CLSID 键出现在 Context 字段中,则 DefInprocHandler 字段中的值标识默认的进程内处理程序。
“值” 说明 非数值 安装程序将 DefInprocHandler 字段中的非数值视为一个系统文件,用作 InprocHandler32 键指定的 32 位进程内处理程序。 Null 对于 LocalServer 或 LocalServer32 CLSID 键,DefInprocHandler 和 Argument 字段都可以为 Null。 1 = 默认(系统) 默认值是由 InprocHandler 指定的 16 位进程内处理程序。 在这种情况下,InprocHandler 的值是注册表中的名称,默认进程内处理程序的值存储在该名称下。 例如,HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID。 2 = 默认(系统) 默认值是由 InprocHandler32 指定的 32 位进程内处理程序。 在这种情况下,InprocHandler32 的值是注册表中的名称,默认进程内处理程序的值存储在该名称下。 例如,HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID。 3 = 默认(系统) 默认为 16 位或 32 位进程内处理程序。 -
Argument
-
如果 LocalServer 或 LocalServer32 CLSID 键出现在 Context 字段中,则此字段中的文本将注册为针对服务器的参数,并由 COM 用来调用服务器。 如果 Context 字段中出现 LocalServer 或 LocalServer32,则 DefInprocHandler 和 Argument 字段都可以为 Null。
请注意,Argument 字段中属性的解析是有限的。 只有在安装了拥有类的组件时属性已具有预期值时,才能解析此字段中格式为 [Property] 的属性。 例如,若要使参数“[#MyDoc.doc]”解析为正确的值,必须在同一过程中安装 MyDoc.doc 文件以及拥有类的组件。
-
Feature_
-
Feature 表中的外部键,指定提供 COM 服务器的功能。
Feature 表第一列的外部键。
-
Attributes
-
如果在此列中设置了 msidbClassAttributesRelativePath,则裸文件名可用于 COM 服务器。 安装程序仅注册文件名,而不是完整路径。 这使当前目录中的服务器优先,并允许同一组件的多个副本。
Attribute 小数 十六进制 msidbClassAttributesRelativePath 1 0x001
执行 RegisterClassInfo 操作 或 UnregisterClassInfo 操作时引用此表。