¿Qué significa GAC?
Uso del GAC
El caché global de ensamblados (GAC) es un caché de código que se ejecuta en cualquier máquina con CLR instalado (como Pocket con CF.NET instalado). ORDENADOR PERSONAL). Los ensamblados destinados a ser compartidos entre aplicaciones se pueden almacenar aquí y deben tener un nombre seguro. Tenga en cuenta que el ensamblado en el que está instalado GAC debe tener un nombre de ensamblado y un nombre de archivo coincidentes, excluyendo la extensión del archivo (por lo que MyAssembly debe estar emparejado con MyAssembly.dll o MyAssembly.exe).
¿Cuáles son los beneficios de instalar un ensamblaje en el GAC? Una ubicación compartida significa que las instalaciones basadas en RAM no necesitan tener archivos DLL duplicados (misma versión y mismo nombre de archivo) que consumen un espacio valioso. Las versiones en paralelo permiten que haya varias versiones del mismo nombre de DLL disponibles para una aplicación CF.NET. En el momento de la compilación, los ensamblados almacenan la información de la versión del ensamblado con la que se crearon, lo que significa que siempre se ejecutarán con la misma versión del ensamblado. Por lo tanto, incluso si hay disponible una versión más nueva de esta DLL, el ensamblado seguirá usando la DLL anterior, evitando así cualquier tipo de incompatibilidad con versiones anteriores. Otros beneficios provienen del uso de GAC en el escritorio, pero no se comparten con el marco de compresión*.
Todas las bibliotecas de clases base de CF.NET están instaladas en el GAC, entonces, ¿qué estás esperando? Es posible que haya notado archivos con el prefijo "GAC" en el directorio \Windows de su Pocket PC. El CLR accederá a la utilidad Cgautil.exe para actualizar el GAC con información sobre los ensamblajes del GAC instalados. Para instalar su ensamblado en el GAC, primero fírmelo con un nombre seguro y luego incluya un archivo de texto (con una extensión .GAC), como un archivo CAB, durante el proceso de implementación de su aplicación. Este archivo .GAC debe colocarse en el directorio \Windows y debe estar codificado en ANSI o UTF-8 (no Unicode).