Global Assembly Cache

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

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

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

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

Функции[править | править исходный текст]

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

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

GAC также хранит разные версии сборок, приложение при запуске выбирает ему необходимую сборку. К примеру ваше приложение использует две сборки с одинаковым именем: одна из них версии 1.0, а вторая 2.0. В одну папку их не положишь, зато GAC может их хранить спокойно.

Создание своей сборки[править | править исходный текст]

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

Смотрите также[править | править исходный текст]

Ссылки[править | править исходный текст]