temas - ¿Cómo puedo hacer referencia a un dll en el GAC desde Visual Studio?
vscode html wrap (10)
Este ensamblado se encuentra en el GAC: Microsoft.SqlServer.Management.RegisteredServers.dll
¿Cómo puedo agregar una referencia a este ensamblaje en Visual Studio?
Puedo ver el archivo en c: / windows / assembly /
El registro de assmblies en el GAC no establece una referencia al ensamblado en el cuadro de diálogo agregar referencias. Todavía necesita hacer referencia al conjunto por ruta para su proyecto, la principal diferencia es que no necesita utilizar la opción copiar local, su aplicación lo encontrará en tiempo de ejecución.
En este caso particular, solo necesita hacer referencia a su ensamblado por ruta (navegar) o si realmente desea tenerlo en el cuadro de diálogo agregar referencia hay una configuración de registro donde puede agregar rutas adicionales.
Tenga en cuenta que si envía su aplicación a alguien que no tiene instalado este ensamblaje, deberá enviarla, y en este caso realmente necesita usar el SharedManagementObjects.msi redistribuible.
En VS, haga clic con el botón derecho en su proyecto, seleccione "Agregar referencia ..." y verá todos los espacios de nombres que existen en su GAC. Elija Microsoft.SqlServer.Management.RegisteredServers y haga clic en Aceptar, y debe ser bueno para ir
EDITAR:
Esa es la forma en que quieres hacer esto la mayor parte del tiempo. Sin embargo, después de hurgar un poco encontré este problema en MS Connect. MS dice que es un problema conocido de implementación, y no tienen una solución alternativa. El tipo dice que si copia el dll de la carpeta GAC y lo deja caer en su contenedor, funciona.
Suponiendo que ya intentó "Agregar referencia ..." como se explicó anteriormente y no tuvo éxito, puede echar un vistazo aquí . Dicen que debe cumplir algunos requisitos previos: - .NET 3.5 SP1 - Windows Installer 4.5
EDITAR: Según esta publicación , es un problema conocido.
Y esta podría ser la solución que estás buscando :)
Los archivos y referencias relevantes se pueden encontrar aquí:
http://msdn.microsoft.com/en-us/library/cc283981.aspx
Tenga en cuenta los enlaces sobre la implementación / etc.
Como dijeron los demás, la mayoría de las veces no querrás hacer eso porque no copia el ensamblado a tu proyecto y no se desplegará con tu proyecto. Sin embargo, si es como yo, y trata de agregar una referencia que todas las máquinas de destino tienen en su GAC, pero no es un ensamblado de .NET Framework:
- Abra el diálogo de Windows Run (Windows Key + r)
- Escriba C: / Windows / assembly / gac_msil. Este es un tipo de hack extraño que te permite navegar por tu GAC. Solo puede acceder a él a través del diálogo de ejecución. Espero que difundir esta información finalmente no haga que Microsoft lo parchee y lo bloquee. (¿Demasiado paranoico?: P)
- Encuentra tu ensamblaje y copia su ruta desde la barra de direcciones.
- Abra el cuadro de diálogo Agregar referencia en Visual Studio y elija la pestaña Examinar.
- Pegue en la ruta a su ensamblado de GAC.
No sé si hay una manera más fácil, pero no la he encontrado. También utilizo con frecuencia el paso 1-3 para colocar archivos .pdb con sus ensamblajes GAC para asegurarme de que no se pierdan cuando más tarde necesite usar Remote Debugger.
La única forma que funcionó para mí es copiar el dll en tu escritorio o algo así, agregarle una referencia y luego eliminar el dll de tu escritorio. Visual Studio se actualizará y finalmente hará referencia al archivo dll del GAC en sí mismo.
En VS2010, desde la ventana Agregar Repeticiones, puede hacer clic en ''Examinar'' y navegar hasta C: / Windows / Assembly y agregar referencias a los ensamblados que desee. Tenga en cuenta que los archivos se pueden agrupar en diferentes carpetas como GAC, GAC_32, GAC_64, GAC_MSIL, etc.
Creé una herramienta que es completamente gratuita, que te ayudará a lograr tu objetivo. Muse VSReferences le permitirá agregar una referencia de caché de ensamblaje global al proyecto desde el elemento de menú Agregar referencia GAC.
Espero que esto ayude a Muse VSExtensions
Puede ser que sea demasiado tarde para responder, pero encontré una manera muy simple de hacer esto (sin un truco).
- Coloque su dll en GAC (para 3.5 Arrastrar arrastrar dentro de "C: / Windows / assembly /" )
- Ir a proyectos -> Propiedades
- Haga clic en Ruta de referencia (para 3.5 es "C: / Windows / assembly /" )
- y construir
Espero eso ayude
Encontré esta extensión para VS 2013 Vitevic GAC Reference .