Global Assembly Cache

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

Global Assembly Cache (англ. GAC — Глобальный Кэш Сборок) — в инфраструктуре .NET — подсистема, хранящая сборки CLI (CLI assembly) в централизованном репозитории. Система разработана для борьбы с проблемами разделяемых библиотек, например таких, как DLL hell.

К сборкам, расположенным в GAC, предъявляется несколько требований. В частности, они должны использовать strong name, соблюдать строгую схему указания версий и допускать исполнение нескольких версий кода в рамках единого приложения.

Два способа взаимодействия с GAC: утилита gacutil.exe и библиотека просмотра кеша: shfusion.dll.

Функции

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

Гарантирует их безопасность от удаления пользователем, так как каталог GAC находится внутри защищенной системной папки Windows.

GAC может хранить несколько разных версий сборок CLI, приложение при запуске запрашивает необходимую версию сборки.

Регистрация своей сборки

Запустить из командной строки gacutil.exe /i <ИмяСборки>

См. также

Ссылки