ensamblados privados y públicos en la GAC

25/10/2004 - 18:20 por Miguel Ortiz | Informe spam
Hola a todos. ¿Alguien me puede decir cual es la diferencia entre estos
tipos de ensamblados y como los instalo en la GAC?

Desde ya muchas gracias.

Miguel

Preguntas similare

Leer las respuestas

#1 Jose Luis Manners
25/10/2004 - 18:36 | Informe spam
Hola Miguel,

Los ensamblados que por defecto VS.NET genera son de tipo privado. El
ensamblado privado es aquel que sólo puede ser utilizado por una aplicación.
Ya que es parte integral de la aplicación, el ensamblado privado debe ser
instalado junto con tu aplicación. Por ejemplo, cuando en tu proyecto creas
una referencia a un ensamblado privado notarás que VS.NET crea una copia del
ensamblado en tu proyecto.

Por otro lado, el ensamblado público (en realidad se le conoce compartido o
"shared") puede ser utilizado por multiples aplicaciones ya que sólo existe
una copia de éste en el computador. Los ensamblados compartidos son los que
se instalan en la GAC. Para hacer esto primero necesitas darle un nombre
seguro ("strong name") y para crear el nombre seguro primero necesitas crear
un archivo de claves mediante una utilidad que se ejecuta desde la línea de
comandos que se llama "sn". Lo haces así:

sn -k miarchivodeclaves.snk (en este caso la clave generada por sn es
guardada dentro de miarchivodeclaves.snk. Este archivo es el se que utiliza
para firmar tu ensamblado)

Luego en VS.NET abres tu proyecto y modificas el archivo AssemblyInfo
cambiandole el atributo "AssemblyKeyFileAttribute" para indicar donde está
tu archivo de clave segura:

[assembly: AssemblyKeyFileAttribute("C:\MiProyecto\miarchivodeclaves.snk")]

Compila el proyecto y el nombre seguro será generado y estampado en tu
ensamblado.

Ahora para instalarlo en la GAC ejecutas lo siguiente desde la línea de
comandos: gacutil /i MiEnsamblado.dll

Y ya está!!! Una nota adicional, asegúrate de actualizar la versión del
ensamblado dentro del archivo AssemblyInfo ya que es posible tener varias
versiones de un ensamblado compartido dentro de la GAC.

Bueno espero que esta "breve"explicación haya aclarado tus dudas.

Saludos,

Jose Luis Manners, MCP
http://blogs.geekdojo.net/jmanners

"Encuentra felicidad en tu trabajo o nunca serás feliz."
Cristóbal Colón

"Miguel Ortiz" wrote in message
news:
Hola a todos. ¿Alguien me puede decir cual es la diferencia entre estos
tipos de ensamblados y como los instalo en la GAC?

Desde ya muchas gracias.

Miguel



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida