Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
A partir del código del directorio 4_Shared, en este paso se utiliza el código del directorio 5_Versioned para crear dos versiones independientes del componente compartido y se utilizan opciones de configuración de aplicaciones adicionales con el fin de demostrar cómo se puede crear una aplicación para ejecutarla. Un método de la versión 2.0.1.0 de Reverser.dll se hizo incompatible a propósito con el mismo método de la versión 2.0.0.0 de forma que un cliente que llamara correctamente a este método con la versión 2.0.0.0 no podría hacerlo con la revisión posterior.
Para ilustrar la forma en que las claves de las versiones pueden cambiar de una versión de un ensamblado a la siguiente, generará un nuevo par de claves con la herramienta Nombre seguro (Sn.exe) y las colocará en un archivo:
sn –k orgVerKey.snk
Ahora que dispone de una nueva clave privada, está preparado para compilar los dos componentes de la versión 2.0 y especificar el archivo de claves y el número de versión que va a asignar. Una vez más, para ello puede especificar los siguientes atributos (de nuevo, se muestra para la versión 2.0.0.0):
[assembly: System.Reflection.AssemblyVersion("2.0.0.0")]
[assembly: System.Reflection.AssemblyKeyFile("orgVerKey.snk")]
Si vuelve a ejecutar Ildasm.exe en los dos archivos Reverser.dll actualizados, podrá comprobar que los ensamblados se pueden compartir, como indica la presencia de una propiedad .publickey diferente (ya que utilizó un par de claves distintas de las de la versión 1.0.0.0) y una propiedad .ver actualizada (2.0.0.0 o 2.0.1.0, según la que consulte):
.assembly Reverser
{
.custom instance void
... // orgVerKey.snk
.publickey = (...}
.hash algorithm 0x00008004
.ver 2:0:0:0
}
Vea también
Directiva de enlace | Resumen de empaquetado e implementación | Apéndice A: Información adicional acerca del empaquetado y de la implementación | Apéndice B: Herramientas de empaquetado e implementación