Herramienta Registro de ensamblados (Regasm.exe)
Actualización: noviembre 2007
Esta herramienta lee los metadatos de un ensamblado y agrega las entradas necesarias al Registro, lo que permite a los clientes COM crear clases de .NET Framework de forma transparente. Una vez registrada una clase, el cliente COM puede utilizarla como si se tratase de una clase COM. La clase se registra una sola vez, cuando se instala el ensamblado. Las instancias de clases del ensamblado no se pueden crear a partir de COM si no están registradas realmente.
regasm assemblyFile [options]
Parámetros
Parámetro |
Descripción |
---|---|
assemblyFile |
Ensamblado que se va a registrar con COM. |
Opción |
Descripción |
---|---|
/codebase |
Crea una entrada Codebase en el Registro. La entrada Codebase especifica la ruta de archivo de un ensamblado que no se encuentra instalado en la caché de ensamblado global. No se debe especificar esta opción si se va a instalar posteriormente el ensamblado que se está registrando en la caché de ensamblados global. El argumento assemblyFile especificado con la opción /codebase debe ser un ensamblado de nombre seguro. |
/registered |
Especifica que esta herramienta sólo hará referencia a las bibliotecas de tipos que ya se hayan registrado. |
/asmpath:directory |
Especifica un directorio que contiene las referencias de ensamblado. Se debe usar con la opción /regfile. |
/nologo |
Suprime la presentación de la portada de inicio de Microsoft. |
/regfile [:regFile] |
Genera el archivo .reg especificado para el ensamblado, que contiene las entradas del Registro necesarias. La especificación de esta opción no cambia el Registro. No se puede utilizar esta opción con las opciones /u o /tlb. |
/silent o /s |
Suprime la presentación de mensajes de aprobación. |
/tlb [:typeLibFile] |
Genera una biblioteca de tipos desde el ensamblado especificado que contiene definiciones de los tipos accesibles especificados en el ensamblado. |
/unregister o /u |
Anula el registro de las clases con posibilidad de creación que se encuentran en el argumento assemblyFile. La omisión de esta opción hace que Regasm.exe registre las clases con posibilidad de creación en el ensamblado. |
/verbose |
Especifica el modo detallado; muestra una lista de los ensamblados relacionados para los que es necesario generar una biblioteca de tipos, cuando se especifica con la opción /tlb. |
/? o /help |
Muestra la sintaxis de comandos y opciones para la herramienta. |
Nota
Las opciones de la línea de comandos de Regasm.exe no distinguen entre mayúsculas y minúsculas. Por otra parte, basta con proporcionar parte de la opción para identificarla de manera única. Por ejemplo, /n equivale a /nologo y /t:outfile.tlb equivale a /tlb:outfile.tlb.
Comentarios
Se puede utilizar la opción /regfile para generar un archivo .reg que contenga las entradas del Registro en lugar de efectuar directamente los cambios en el Registro. El Registro se puede actualizar en un equipo importando el archivo .reg con la herramienta Editor del Registro (Regedit.exe). Observe que el archivo .reg no contiene actualizaciones del Registro que puedan ser realizadas por funciones de registro definidas por el usuario. Observe que la opción /regfile sólo emite entradas del Registro para clases administradas. Esta opción no emite entradas del Registro para TypeLibIDs o InterfaceIDs.
Cuando se especifica la opción /tlb, Regasm.exe genera y registra un biblioteca de tipos que describe los tipos encontrados en el ensamblado. Regasm.exe coloca las bibliotecas de tipos generadas en el directorio de trabajo actual o en el directorio especificado para el archivo de resultados. La generación de una biblioteca de tipos para un ensamblado que hace referencia a otros ensamblados puede producir la generación de varias bibliotecas de tipos a la vez. Se puede utilizar la biblioteca de tipos para proporcionar información sobre tipos a herramientas de programación como Visual Studio 2005. No se debe utilizar la opción /tlb si el ensamblado que se está registrando fue producido por la herramienta Importador de la biblioteca de tipos (Tlbimp.exe). No se puede exportar una biblioteca de tipos de un ensamblado que se importó desde una biblioteca de tipos. La utilización de la opción /tlb tiene el mismo efecto que la utilización de las herramientas Exportador de la biblioteca de tipos (Tlbexp.exe) y Regasm.exe, con la particularidad de que Tlbexp.exe no registra la biblioteca de tipos que produce. Si usa la opción /tlb para registrar una biblioteca de tipos, puede utilizar la opción /tlb con la opción /unregister para anular el registro de la biblioteca de tipos. El uso de las dos opciones juntas anulará el registro de la biblioteca de tipos y de las entradas de la interfaz, lo que puede limpiar considerablemente el Registro.
Al registrar un ensamblado para que pueda ser utilizado por COM, Regasm.exe agrega entradas al Registro del equipo local. Más concretamente, crea claves del Registro dependientes de la versión que permiten que varias versiones del mismo ensamblado se ejecuten simultáneamente en un equipo. Al registrar un ensamblado por primera vez, se crea una clave de nivel superior para el ensamblado y una subclave única para la versión específica. Cada vez que se registra una nueva versión del ensamblado, Regasm.exe crea una subclave para la nueva versión.
Por ejemplo, vamos a considerar un escenario en el que se registre el componente administrado myComp.dll, versión 1.0.0.0, que pueda ser utilizado por COM. Posteriormente, se registra myComp.dll, versión 2.0.0.0. El usuario determina que todas las aplicaciones de cliente COM del equipo están utilizando myComp.dll versión 2.0.0.0 y decide anular el registro de myComponent.dll versión 1.0.0.0. Este esquema del Registro permite anular el registro de myComp.dll versión 1.0.0.0 ya que sólo se elimina la subclave de la versión 1.0.0.0.
Después de utilizar un ensamblado mediante Regasm.exe, se puede instalar en la caché de ensamblados global para que se pueda activar desde un cliente COM. Si el ensamblado va a ser activado únicamente por una aplicación, se puede colocar en el directorio de dicha aplicación.
Ejemplos
El comando siguiente registra todas las clases públicas contenidas en myTest.dll.
regasm myTest.dll
El comando siguiente genera el archivo myTest.reg, que contiene todas las entradas del Registro necesarias. Este comando no actualiza el Registro.
regasm myTest.dll /regfile:myTest.reg
El comando siguiente registra todas las clases públicas contenidas en myTest.dll, y genera y registra la biblioteca de tipos myTest.tlb, que contiene definiciones de todos los tipos públicos especificados en myTest.dll.
regasm myTest.dll /tlb:myTest.tlb
Vea también
Conceptos
Referencia
Herramientas de .NET Framework
Exportador de la biblioteca de tipos (Tlbexp.exe)