He creado un ensamblado .NET para la interoperabilidad COM y está funcionando bien en mi máquina de desarrollo. Actualmente estoy tratando de averiguar cómo implementar el archivo DLL en una máquina de destino utilizando el "Proyecto de configuración" de Visual Studio. ¿Cómo puedo usar el proyecto de instalación de VIsual Studio para hacer lo siguiente:Utilice Visual Studio Setup Project para registrar automáticamente GAC y un COM Interop DLL
- Registrar el conjunto (actualmente usando
regasm
).- El ensamblaje debe registrarse con éxito
y la biblioteca de tipos (.tlb) debe registrarse con éxito. - This answer sugiere descartar
regasm
en favor del código personalizado. Esta es una buena idea? Si es así, ¿cómo se incluye este código en el proyecto de instalación? - This answer sugiere usar el comando
/regfile
deregasm
y luego usar la herramienta de importación en el Registro en el Proyecto de configuración. esto funcionara?
- El ensamblaje debe registrarse con éxito
- instalar el ensamblado en la GAC (en la actualidad el uso de
gacutil
)- Soy consciente de la "Carpeta de caché de ensamblados global" en el "sistema de archivos en el equipo de destino." ¿Hay algo especial que deba hacer al incluir el ensamblaje en el proyecto de instalación?
Cualquier otro tipo de asesoramiento o preocupaciones sería muy apreciada.
¿La propiedad del registro que se establece en 'vsdrpCOM' crea y registra automáticamente el archivo .tlb también? Si no, ¿cómo incluyo el .tlb en el proyecto de configuración (parece que no me gusta que se comparta en la carpeta GAC del proyecto de configuración)? –
Ese es un gran punto. Me acostumbré tanto a escribir 'regasm/tlb ...' que supuse que lo necesitaría, pero sacas un buen punto: la máquina del cliente no escribirá código contra estos ensamblajes. Muchas gracias. –
Para responder a la pregunta de Ben en su comentario, el uso de vsdrpCOM * * creará y registrará automáticamente el archivo .tlb. – Keith