Saltar al contenido

¿Dónde está la ubicación de GAC?

Buscamos en todo internet para así tenerte la solución para tu inquietud, en caso de alguna difcultad deja la duda y responderemos sin falta.

Solución:

Como descargo de responsabilidad, comenzaré diciendo que nunca debe editar directamente el contenido de su GAC.

Pasando a la información…

Hay dos GAC diferentes en juego en su pregunta, el GAC 2.0 y el GAC 4.0. Cuando se habla de estos, no se refieren tanto a la versión del marco .NET, sino a la versión de CLR que se usa. Da la casualidad de que en 2.0, el CLR es 2 y en 4.0, el CLR es 4. Como marco de referencia, el CLR para .Net 3.5 permaneció en 2 y, por lo tanto, el GAC para .net 2.0 y .net 3.5 es el mismo.

¿Pero donde esta?

El GAC 2.0 está en %WINDIR%Assembly en explorador. Para la mayoría de los sistemas operativos Windows más nuevos, %WINDIR% es C:Windows por defecto. Debajo del capó, esta es en realidad una extensión de shell que oculta la ubicación real del GAC, pero para sus propósitos, abre el explorador para C:WindowsAssembly para ver el contenido del GAC 2.0. La extensión de shell también agrega el beneficio de arrastrar y soltar ensamblajes en C:WindowsAssembly para agregarlos al GAC (UAC debe estar deshabilitado en Win7 y versiones posteriores).

El GAC 4.0 está en C:WindowsMicrosoft.NETassembly. Encontrará los distintos tipos de ensamblajes divididos en sus subdirectorios de 32 bits, 64 bits o MSIL en esa carpeta. No hay una extensión de shell para el gac de CLR4, por lo que está viendo el lugar real en el disco donde viven los ensamblajes.

Algo fuera de tema…

La forma en que siempre detecto mediante programación qué versiones de .Net Framework están instaladas es mirar HKEY_LOCAL_MACHINESOFTWAREMicrosoftNET Framework SetupNDP … las subcarpetas indican las versiones instaladas.

en Windows XP, es c:windows y es una carpeta oculta y puede encontrarla escribiendo manualmente el directorio donde está su GAC (WINNT era un servidor o estación de trabajo .NT 4.0, o Windows Server 2000, o Windows 2000) y si actualizado a Windows XP o Windows Server 2003 WINNT Creo que permanecería intacto solo en ese escenario, eso es lo que debe usar la variable de sistema global %windir%

Estoy en Windows 8.1 de 64 bits y el gac todavía está en C:Windowsassembly

pero .net está en c:windowsMicrosoft.NET es donde está el CLR y el tiempo de ejecución

Extrañamente a la otra respuesta anterior, parece que no estoy de acuerdo con que c:windowsassembly sea el “viejo gac”

aquí están mis dos resultados

Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

C:WINDOWSsystem32>cd..

C:Windows>cd assembly

C:Windowsassembly>dir
Volume in drive C is OS
Volume Serial Number is DE26-14AA

Directory of C:Windowsassembly

11/01/2013  01:15 PM              GAC
11/14/2013  01:10 PM              GAC_32
11/14/2013  01:10 PM              GAC_64
11/14/2013  01:27 PM              GAC_MSIL
11/13/2013  05:36 PM              NativeImages_v2.0.50727_32
11/10/2013  03:22 AM              NativeImages_v2.0.50727_64
11/14/2013  01:33 PM              NativeImages_v4.0.30319_32
11/13/2013  05:36 PM              NativeImages_v4.0.30319_64
11/14/2013  01:33 PM              temp
11/14/2013  01:32 PM              tmp
           0 File(s)              0 bytes
          10 Dir(s)  27,701,415,936 bytes free

C:Windowsassembly>

el c:windowsmicrosoft.netassembly no creo que sea su Active GAC, creo que aquí es donde busca Visual Studio, al compilar para una versión específica x64 o 32 etc, el otro c:windowsassembly es el estado actual de su máquina. pero no soy un experto, solo lo que veo

Aquí puedes ver las reseñas y valoraciones de los lectores

Te invitamos a añadir valor a nuestra información participando con tu veteranía en las reseñas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *