Кіріспе

Global Assembly Cache (GAC) – Microsoft-тың .NET Framework-тағы Common Language Infrastructure (CLI) үшін машинаның барлық бөлігінде қолданылатын CLI құрастыру кэші. Арнайы басқарылатын орталық репозиторийді пайдалану ортақ кітапханалар тұжырымдамасының кемшіліктерін жоюға және DLL тозағы сияқты мәселелерге ұшыраған басқа шешімдердің қиындықтарынан сақтануға көмектеседі.

Талаптар

GAC-те орналасқан жиналымдар әртүрлі код нұсқаларын қатар орындауға мүмкіндік беретін белгілі бір нұсқалау схемасын сақтауға тиіс. Атап айтқанда, мұндай жиналымдар күшті атпен таңбалануы керек.

Қолданылуы

GAC-пен өзара әрекеттесудің екі жолы бар: Global Assembly Cache Tool (gacutil.exe) және Assembly Cache Viewer (shfusion.dll).

Ассемблері кэшін қарау

Жаңа интерфейс, Assembly Cache Viewer, Windows Explorer-ге енгізілген. %windir%\assembly\ (мысалы, C:\WINDOWS\assembly) немесе %WINDIR%\Microsoft.NET\assembly каталогын қарау арқылы кэште сақталған жинақтар, олардың нұсқалары, мәдениеті, ашық кілттік белгісі және процессор архитектурасы көрсетіледі. Жинақтарды сүйреп тастау арқылы орнатуға болады, ал өшіру үшін оларды таңдап, Delete пернесін басуға немесе контекстік мәзірді пайдалануға болады. .NET Framework 4 іске қосылғаннан бастап Assembly Cache Viewer қабық кеңейтімі қолданыстан шықты.

Пайдалану үлгісі

Компьютерде екі CLI жинағы бар, екеуінің де атауы AssemblyA, бірақ біреуі 1.0 нұсқасы, ал екіншісі 2.0 нұсқасы. Екеуі де AssemblyA деп аталатын файлға компиляцияланғандықтан, олар FAT32 файлдық жүйесіндегі бір каталогта қатар орналаса алмайды. Оның орнына, құрастырудың әр нұсқасын қажет ететін бағдарламалар GAC-тің виртуалды файлдық жүйесін пайдалана алады.

Іске асыру

GAC конструкциясы Windows операциялық жүйесінде физикалық түрде жоқ. Ол CLI арқылы іске асырылады және басқарылады. %systemroot% ішіндегі assembly және Microsoft.NET\assembly (NET 4.0 үшін) деп аталатын папкалар, нұсқасы мен ашық кілттерінің белгілерімен бірге, жаһандық түрде қолжетімді барлық жинақтарды қамтиды. Осылайша, әр нұсқа бір орында болуы мүмкін және әдеттегідей, келесі нұсқалар код кірістік орнын сақтау қажеттілігі болмайды. Windows Explorer жинақтарды осы папкаға сүйреп тастау арқылы орнатуға рұқсат етеді, егер оларды командалық жолдан орнатуға рұқсат етілген болса ғана. Шақырушы қолданба жинақты сілтемелеген кезде оның нұсқасын көрсетуі мүмкін, сондықтан орындалу кезінде дұрыс нұсқаны пайдалану үшін файл атауына сілтеме жасалады.