限定组件
限定组件是一种单级间接方法,类似于指针。 限定组件主要用于将具有并行功能的组件分组到各种类别中。 例如,如果 Component 表中列出了 30 个组件,并且它们是本地化为 30 种语言的同一 Microsoft Word 传真模板,则可以使用 PublishComponent 表将这些组件分组到一个限定组件类别中。
限定组件以与普通组件相同的方式输入到 Component 表中。 每个组件都必须具有在 Component 表中指定的唯一组件 ID GUID 和组件标识符。 此外,限定组件与 PublishComponent 表中的类别 GUID 和文本字符串限定符关联。 限定组件由类别 GUID 和限定符引用,它们仅指向 Component 表中的普通组件。
例如,限定组件 ID GUID 可以指向不同语言版本的资源 DLL。 在这种情况下,本地化资源 DLL 组包含类别,数字区域设置标识符 (LCID) 字符串通常用作限定符。 开发人员可以编写使用这些限定组件来执行以下操作的安装包:
- 使用 MsiProvideQualifiedComponent 或 MsiProvideQualifiedComponentEx 查找特定语言版本的资源 DLL 的路径,并安装资源。
- 通过调用 MsiEnumComponentQualifiers 确定所有语言版本的资源 DLL。
- 准备应用程序以支持其他语言。 应用程序的未来语言包可以使用限定组件来添加更多语言版本的资源 DLL。
有关详细信息,请参阅使用限定组件。