Добавление сборок в пакет
Разработчики установщика Windows могут использовать рекомендации в этом разделе для создания пакетов установщика Windows, содержащих сборки.
Следующие рекомендации применимы к сборкам Win32 и сборкам, которые использует среда CLR microsoft платформа .NET Framework.
- Компонент установщика Windows должен содержать не более одной сборки.
- Все файлы в сборке должны находиться в одном компоненте.
- Каждый компонент, содержащий сборку, должен иметь запись в таблице MsiAssembly .
- Строгое имя кэша сборок каждой сборки должно быть добавлено в таблицу MsiAssemblyName .
- Используйте таблицу Реестра вместо таблицы Class при регистрации COM-взаимодействия для сборки.
- Сборки с одинаковым строгим именем являются одной и той же сборкой. При установке одной и той же сборки разными приложениями компоненты, содержащие сборку, должны использовать одно и то же значение для ComponentId в своих таблицах Компонентов .
Примечание
Объявления продуктов определяют сборки, которые могут быть установлены и использоваться разными приложениями. Объявления продуктов не идентифицируют частные сборки.
Добавление сборок Win32
При включении сборок Win32 используйте следующие рекомендации.
- Значение KeyPath в таблице Компонент для компонента, содержащего сборку Win32, не должно иметь значение NULL.
- Значение KeyPath в таблице Компонент для компонента, содержащего сборку политики Win32, должно быть файлом манифеста.
- Значение KeyPath в таблице Компонент для компонента, содержащего сборку Win32, которая не является сборкой политики, не должно быть файлом манифеста или файлом каталога. Это должен быть другой файл в сборке.
- Добавьте строку в таблицу MsiAssemblyName для каждой пары имен и значений, перечисленных в разделе assemblyIdentity манифеста сборки Win32.
Добавление сборок, используемых с платформа .NET Framework
При включении сборок, используемых средой CLR платформа .NET Framework, используйте следующие рекомендации.
- Значение KeyPath в таблице Компонент для компонента, содержащего сборку, не должно иметь значение NULL.
- При установке сборки, используемой средой CLR, в глобальный кэш сборок значение в столбце File_Application таблицы MsiAssembly должно иметь значение Null.
- Добавьте строку в таблицу MsiAssemblyName для каждого атрибута строгого имени сборки. Все сборки должны иметь атрибуты Name, Version и Culture, указанные в таблице MsiAssemblyName. Атрибут publicKeyToken требуется для глобальной сборки. В следующей таблице приведен пример таблицы MsiAssemblyName для глобальной сборки, используемой средой CLR.
Компонент | Имя | Значение |
---|---|---|
КомпонентA | Имя | простой |
КомпонентA | version | 1.0.0.0 |
КомпонентA | Культура | нейтральная тональность |
КомпонентA | Publickeytoken | 9d1ec8380f483f5a |