Compré recientemente un certificado de autenticación de globalsign y tengo problemas para firmar mis archivos para la implementación. Hay un par de archivos .exe generados por un proyecto y luego puestos en .msi. Cuando firmo los archivos .exe con la herramienta de inicio de sesión, el certificado es válido y funciona bien. El problema es que cuando construyo .msi (usando el proyecto de instalación de Visual Studio) los archivos .exe pierden sus firmas. Así que puedo firmar el .msi después de que se compila, pero los archivos .exe instalados continúan con todo el negocio de "editor desconocido". ¿Cómo puedo conservar la firma en estos archivos para la instalación en la máquina del cliente?Cómo firmar archivos de instalación de un Visual Studio .msi
Respuesta
Visual Studio crea dos carpetas en tiempo de compilación: obj y bin. Resulta que, al menos en mi caso, la salida siempre se copiará de la carpeta obj a la carpeta bin. Estaba firmando los archivos ejecutables en la carpeta bin solo para que se sobrescriban y luego se empaqueten en el msi. Firmar los ejecutables en la carpeta obj resolvió el problema.
¿Está seguro de que el proyecto del instalador está mirando el archivo binario con signo y no el sin signo?
No estoy usando el constructor msi mucho, pero me sorprendería que modifique los archivos que contiene.
Gracias por apuntarme en la dirección correcta – Alex
Puede añadir el siguiente PostBuiltEvent a su proyecto de instalación VS (propiedades del proyecto):
de Windows 8.0:
"C:\Program Files (x86)\Windows Kits\8.0\bin\x86\signtool.exe" sign /a $(BuiltOutputPath)
Windows 10:
"C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe" sign /a $(BuiltOutputPath)
PS : Adapte los argumentos de las herramientas de señalización para que se adapten a sus necesidades remitiéndolas a the documentation
- 1. ¿Por qué Visual Studio crea archivos de instalación de .exe?
- 2. ¿Cómo firmar una MSI?
- 3. Firmar un ensamblado en Visual Studio
- 4. .Proyectos de instalación de .NET con Visual Studio 2008
- 5. Instalación silenciosa de un paquete MSI
- 6. instalación de Visual Studio 2010
- 7. Visual Studio: ¿Cómo nombrar el archivo de salida .msi de un proyecto de instalador?
- 8. "error de generación irrecuperable" en cualquier proyecto de instalación MSI
- 9. ¿La instalación de Visual Studio 2010 + Oslo CTP atornillará mi instalación de Visual Studio 08?
- 10. instalación de Visual Studio Proyecto diálogo personalizado
- 11. Proyecto de instalación en Visual Studio 2010: ¿publicador desconocido?
- 12. En un proyecto de instalación de Visual Studio, ¿cómo puedo generar un script de desinstalación?
- 13. Acción personalizada no funciona - Proyecto de instalación de Visual Studio
- 14. proyecto de instalación en Visual Studio 2010 Requiere .NET 4.0
- 15. ¿Qué son los "archivos de contenido" (en Visual Studio: Proyecto de instalación: Sistema de archivos
- 16. Proyecto de instalación de Visual Studio 2010: un proyecto para 64 y 32
- 17. Proyecto de instalación de Visual Studio condicional si existe archivo
- 18. Visual Studio 2010 SP1 Beta instalación lenta
- 19. Cómo ejecuto el programa de instalación externo en mi proyecto de instalación de Visual Studio
- 20. ¿Cómo crear un complemento de Visual Studio para generar archivos?
- 21. Selector de archivos de Visual Studio
- 22. ¿Cómo ejecutar el archivo de instalación (* .exe) sin usar el archivo MSI?
- 23. Instalar un servicio de Windows desde un proyecto de instalación de Visual Studio
- 24. Agregar prerrequisitos personalizados al proyecto de instalación de Visual Studio
- 25. Cómo registrar un CCW .NET con regasm desde un proyecto de instalación de Visual Studio 2008
- 26. ¿Cómo puedo crear una configuración de MSI?
- 27. Proyecto de instalación de Visual Studio: Iconos de instalación y aplicación
- 28. Error criptográfico al firmar el ensamblado en Visual studio
- 29. Cómo actualizar a través de msi
- 30. Cómo no firmar un manifiesto de ClickOnce
gracias, esto resolvió mis problemas con esto! –
Muchas gracias. Había visto a gente intentando transmitir lo mismo, aunque tu respuesta fue muy concisa y fácil de leer. Has guardado horas de mi vida:) – Dawson