Квалифицированные компоненты

Квалифицированный компонент — это метод одноуровневого косвенного обращения, аналогичный указателю. Квалифицированные компоненты в основном используются для группировки компонентов с параллельной функциональностью по категориям. Например, если в таблице Компонент указано 30 компонентов, которые являются тем же шаблоном факса Microsoft Word, локализованным на 30 языках, их можно сгруппировать в категорию квалифицированных компонентов с помощью таблицы PublishComponent.

Квалифицированные компоненты вводятся в таблицу Компонент так же, как и обычные компоненты. Каждый компонент должен иметь уникальный идентификатор GUID компонента и идентификатор компонента, указанный в таблице Компонент. Кроме того, квалифицированные компоненты связаны с GUID категории и текстовым строковым квалификатором в таблице PublishComponent. На квалифицируемые компоненты ссылается GUID категории и квалификатор, который просто указывает на обычный компонент в таблице Component.

Например, идентификатор GUID полного идентификатора компонента может указывать на различные языковые версии библиотеки DLL ресурсов. В этом случае группа локализованных библиотек DLL ресурсов состоит из категории, а строки числовых идентификаторов языкового стандарта (LCID) обычно используются в качестве квалификаторов. Разработчик может создать пакет установки, который использует эти квалифицированные компоненты для выполнения следующих действий:

  • Найдите путь к определенной языковой версии библиотеки DLL ресурса с помощью MsiProvideQualifiedComponent или MsiProvideQualifiedComponentEx и установите ресурс.
  • Определите все языковые версии библиотеки DLL ресурса, вызвав MsiEnumComponentQualifiers.
  • Подготовьте приложение для поддержки дополнительных языков. Будущий языковой пакет для приложения может использовать квалифицированный компонент для добавления дополнительных языковых версий библиотеки DLL ресурса.

Дополнительные сведения см. в разделе Использование квалифицированных компонентов.