глобальный кэш сборок

На каждом компьютере с установленной средой CLR имеется кэш кода на уровне компьютера, называемый глобальным кэшем сборок. В глобальном кэше сборок сохраняются сборки, специально предназначенные для совместного использования на компьютере несколькими приложениями.

Организовывать совместное использование сборок путем установки их в глобальный кэш следует только при необходимости. Как правило, зависимости между сборками следует сохранять закрытыми, а сами сборки нужно размещать в папке приложения, если они не предназначены для совместного использования. Кроме того, не обязательно устанавливать сборки в глобальный кэш сборок для доступа к ним из COM-взаимодействия или из неуправляемого кода.

ПримечаниеПримечание

Существуют случаи, в которых явно не требуется установка сборки в глобальный кэш сборок.Если одна из составляющих приложение сборок помещается в глобальный кэш, то становится невозможной репликация или установка приложения с помощью команды xcopy для копирования папки приложения.Для этого также потребуется переместить сборку в глобальном кэше сборок.

Существует два способа развертывания сборки в глобальном кэше сборок.

  • Использование программы установки, предназначенной для работы с глобальным кэшем сборок. Данный подход является предпочтительным при установке сборок в глобальный кэш.

  • Использование инструмента разработчика под названием средство глобального кэша сборок (Gacutil.exe), предоставляемого в Пакет средств разработки программного обеспечения (SDK) для Windows.

  • ПримечаниеПримечание

    В сценариях развертывания для установки сборок в глобальный кэш используйте установщик Windows версии 2.0. Средство глобального кэша сборок используйте только при разработке, поскольку оно не обеспечивает подсчет ссылок на сборку и другие возможности, предоставляемые при использовании установщика Windows.

Администраторы часто защищают папку systemroot с помощью списка управления доступом, определяющего права на запись и выполнение. Поскольку глобальный кэш сборок устанавливается в подкаталоге каталога SystemRoot, для него наследуется этот список управления доступом. Рекомендуется разрешать удаление файлов из глобального кэша сборок только пользователям, имеющим права доступа администратора.

Приложения, развернутые в глобальном кэше сборок, должны иметь строгие имена. При добавлении сборки в глобальный кэш сборок выполняется проверка целостности всех входящих в сборку файлов. Кэш выполняет такую проверку целостности, чтобы гарантировать, что сборка не была изменена (например, если файл был изменен, но изменения не были отражены в манифесте сборки).

См. также

Основные понятия

Сборки в среде CLR

Сборки со строгими именами

Другие ресурсы

Работа со сборками и глобальным кэшем сборок

Журнал изменений

Дата

Журнал

Причина

Июнь 2010

Удалено упоминание о расширении оболочки, которое устарело, начиная с .NET Framework версии 4.

Исправление ошибки содержимого.