Global Assembly Cache

Поделись знанием:
(перенаправлено с «GAC»)
Перейти к: навигация, поиск

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 <ИмяСборки>

См. также

Напишите отзыв о статье "Global Assembly Cache"

Ссылки

  • [msdn2.microsoft.com/en-us/library/yf1d93sz.aspx .NET Framework Developer’s Guide]
  • [msdn2.microsoft.com/en-us/library/ex0ss12c.aspx Global Assembly Cache Tool (gacutil.exe)]
  • [www.codeproject.com/dotnet/demystifygac.asp Demystifying the .NET Global Assembly Cache]
  • John, Mueller [www.devsource.com/c/a/Techniques/Ten-Managed-Application-Pitfalls-that-Kill-Version-Compatibility/ Ten Managed Application Pitfalls that Kill Version Compatibility](недоступная ссылка — история). devsource.com (11 февраля 2005). Проверено 26 января 2008.

Отрывок, характеризующий Global Assembly Cache

– Я слыхал про такого рода дела и знаю, что Государь очень строг в этих случаях. Я думаю, надо бы не доводить до Его Величества. По моему, лучше бы прямо просить корпусного командира… Но вообще я думаю…
– Так ты ничего не хочешь сделать, так и скажи! – закричал почти Ростов, не глядя в глаза Борису.
Борис улыбнулся: – Напротив, я сделаю, что могу, только я думал…
В это время в двери послышался голос Жилинского, звавший Бориса.
– Ну иди, иди, иди… – сказал Ростов и отказавшись от ужина, и оставшись один в маленькой комнатке, он долго ходил в ней взад и вперед, и слушал веселый французский говор из соседней комнаты.


Ростов приехал в Тильзит в день, менее всего удобный для ходатайства за Денисова. Самому ему нельзя было итти к дежурному генералу, так как он был во фраке и без разрешения начальства приехал в Тильзит, а Борис, ежели даже и хотел, не мог сделать этого на другой день после приезда Ростова. В этот день, 27 го июня, были подписаны первые условия мира. Императоры поменялись орденами: Александр получил Почетного легиона, а Наполеон Андрея 1 й степени, и в этот день был назначен обед Преображенскому батальону, который давал ему батальон французской гвардии. Государи должны были присутствовать на этом банкете.
Ростову было так неловко и неприятно с Борисом, что, когда после ужина Борис заглянул к нему, он притворился спящим и на другой день рано утром, стараясь не видеть его, ушел из дома. Во фраке и круглой шляпе Николай бродил по городу, разглядывая французов и их мундиры, разглядывая улицы и дома, где жили русский и французский императоры. На площади он видел расставляемые столы и приготовления к обеду, на улицах видел перекинутые драпировки с знаменами русских и французских цветов и огромные вензеля А. и N. В окнах домов были тоже знамена и вензеля.