Ocurrió un error al firmar: SignTool.exe no encontrado

102

Mientras intentaba actualizar mi proyecto que estaba haciendo, recibí un error por primera vez que vi:

'Ocurrió un error al firmar: SignTool.exe no encontrado.'

Nunca había visto esto antes, así que busqué SignTool.exe es lo que firma mi proyecto para la implementación de ClickOnce.

También leí que es parte del SDK de Windows, pero cuando busqué dónde está SignTool.exe, ¡lo vi allí mismo!

  C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin

No vi ningún problema, y ​​siempre he publicado mi proyecto todo el tiempo. Estoy en la versión 68. Pero esta es la primera vez que veo esto, no toqué ninguna opción que pudiera hacer esto.

¿Alguna ayuda?

Alex
fuente
¿Tiene algunas versiones de Visual Studio en su máquina y recientemente ejecutó algunas versiones diferentes?
hasta el
Estoy usando la vista previa de desarrollador de Windows, ¿es eso?
Alex

Respuestas:

7

Ahora intente publicar la aplicación ClickOnce. Si aún encuentra el mismo problema, verifique si instaló Microsoft .NET Framework 4.5 Developer Preview en el sistema. Microsoft .NET Framework 4.5 Developer Preview es una versión preliminar de .NET Framework y no debe usarse en escenarios de producción. Es una actualización in situ de .NET Framework 4. Debería desinstalar este producto preliminar de ARP.

https://blogs.msdn.microsoft.com/vsnetsetup/2013/11/18/an-error-occurred- while-signing-signtool-exe-not-found/

Por último, es posible que desee instalar la vista previa del cliente en lugar de estar en la vista previa del desarrollador

Micah Armantrout
fuente
2
Actualizado con nueva versión
Micah Armantrout
2
La respuesta correcta es de der_meister y Alex Erygin
der_chirurg
1
respuesta obsoleta
T.Todua
193

Las herramientas de publicación ClickOnce no se instalan como parte de las opciones de instalación típicas. Entonces tienes que instalarlo en modo avanzado. Instalación ClickOnce

Este cuadro de diálogo se puede encontrar en Windows 7 yendo a Panel de control> Desinstalar un programa , haciendo clic con el botón derecho en Microsoft Visual Studio Professional 2015 y seleccionando Change. Se abrirá un cuadro de diálogo de Visual Studio. Seleccione Modifydel conjunto de botones en la parte inferior y aparecerá el cuadro de diálogo de arriba.

Alex Erygin
fuente
7
Sí, esto funcionó para mí en Windows10. En el Panel de control, actualicé la instalación para incluir CickOnce Publishing Tools y ¡funcionó! Gracias.
Nuno Nogueira
25
Esta es la respuesta correcta para las personas que tienen problemas con esto en Visual Studio 2015.
Jaxidian
3
La versión de línea de comandos es: . "C: \ ProgramData \ Package Cache \ {90ac7cb6-f7f2-49d1-aa5d-d159d8e86e19} \ vs_professional.exe" / InstallSelectableItems ClickOnceV1 / S
stefan.seeland
60

Haga clic en la aplicación Once -> Propiedades -> Firma -> Desmarcó la casilla Firmar los manifiestos ClickOnce.

El problema se resolverá.

Nota: tenga en cuenta que esta solución elimina la seguridad de su proyecto. Busque la ayuda de un colega más instruido antes de hacerlo.

Vignesh
fuente
31
Esta es una pésima solución.
Alex Erygin
1
Soy un programador experimentado en Java y Python. Necesitaba compilar un proyecto de C # en VS2015 para mi propio uso. Esta es la única solución que pude entender (con la ayuda de Google) en esta página.
chiffa
4
Esto no es una solución: hay una razón por la que los programas ClickOnce están firmados: es una característica de seguridad, no algo que moleste a los desarrolladores
Brondahl
5
Esta respuesta se relaciona con "ignorar la seguridad y ayudar a mis usuarios a infectarse". Esta NO debería ser la solución que escojas. ¡Si no le importa firmar un instalador, entonces debe eliminar la configuración del instalador / publicación en lugar de deshabilitar la seguridad!
Jaxidian
5
Esta es una buena solución ya que solo escribo una pequeña herramienta para uso personal. Creo que debería ser: "Haga clic con el botón derecho en su proyecto - Propiedades - Firma - Desmarque Firmar manifiesto de ClickOne". Al principio no sé cómo "Hacer clic una vez en la aplicación", se confunde con las herramientas ClickOnce: D
Quan Nguyen
23

SignTool se mueve a otra ubicación en el último SDK: C:\Program Files (x86)\Windows Kits\8.1\bin\x86

Necesita instalar ClickOnce Publishing Tools durante la instalación de Visual Studio 2015.

Puede volver a ejecutar la instalación desde la sección Programas y características; busque Visual Studio en la lista y haga clic en Cambiar.

Der_Meister
fuente
Estoy usando Windows 10, no puedo encontrar SignTool en ninguna parte. Debo desmarcar "Firmar los manifiestos de ClickOne" para evitar este error.
witoong623
1
Utilizo Windows 10 y Visual Studio 2015 Community Edition. SignTool se instaló cuando agregué el paquete ClickOnce Publishing Tools en la configuración de VS.
Der_Meister
@Der_Meister, ¿ha publicado algo con éxito?
ralphgabb
1
Esta es la respuesta correcta: decepcionante de que "No firmar" y "reinstalar .NET" estén más arriba :(
Brondahl
1
En caso de que no sea obvio para nadie, volver a ejecutar el instalador le permitirá agregar funciones adicionales a su instalación de VS; es muy claro una vez que está abierto.
Brondahl
19

Puede solucionar este problema haciendo clic en la aplicación de instalación de VS. Luego haga clic en Modificar> Marcar la aplicación ClickOnce y luego actualice su VS. También creo que @Alex Erygin tiene razón. Es una mala solución para la aplicación Click Once -> Propiedades -> Firma -> Desmarque Firmar los manifiestos de ClickOnce. Esta no es una solución. Solo circunvalaba el problema.

Stoyan Petkov
fuente
4
circumambulado
behelit
11

Esta es una solución simple. Abra el proyecto en el que está recibiendo este error. Haga clic en "Proyecto" en la parte superior. Luego haga clic en "Propiedades" (será el nombre del proyecto abierto), luego haga clic en "Seguridad" y luego desmarque "Habilitar la configuración de seguridad de ClickOnce".

Eso debería arreglar todo.

Joe Smith
fuente
Su corrección funcionó en nuestro entorno donde el código se comparte entre desarrolladores que usan SVN
Christopher Bonitz
1
No funciona, pero cuando se hace clic en Firmar -> Desmarcado [Firmar los manifiestos de ClickOnce] ahora funciona ...
Monzur
Arreglo rapido. ¡Gracias!
user3772108
"Eso debería arreglar todo" - excepto para mantener la seguridad
MickyD
9

Haga clic en "Proyecto" en la parte superior. Luego haga clic en "Propiedades" -> Firma -> Desmarcado [Firmar los manifiestos de ClickOnce] ahora está funcionando

Monzur
fuente
7

Ninguna de las respuestas anteriores habla de deshabilitar ClickOnce. En mi situación, nunca usé ClickOnce para mis aplicaciones, pero después de actualizar a VS 2015, se habilitó repentinamente y obtuve el error 'SignTool.exe no encontrado' cuando intenté compilar.

Para deshabilitarlo, vaya a las propiedades de su proyecto (clic derecho) y elija Seguridad | Desmarque Habilitar la configuración de seguridad de ClickOnce .

Puede dejar el manifiesto marcado en la pestaña Firma porque no tiene nada que firmar si está deshabilitado.

Confirmé que desmarcar la seguridad resolvió el error de compilación en mis proyectos.

Jjmboni
fuente
tiene habilitada la publicación de clic una vez, todo lo que hizo fue eliminar su seguridad.
Mickey Perlstein
2

Necesitaba firmar, por lo tanto, no pude desmarcar como se sugirió.

Luego vaya al Panel de control -> Programas y características -> Microsoft Visual Studio 2015 Haga clic en Cambiar, luego se cargará el instalador y deberá hacer clic en Modificar para agregar la función Herramientas de publicación ClickOnce.

Karthik
fuente
1

Tuve un problema similar. Por alguna razón, en las propiedades del proyecto -> Firma -> Firmar manifiestos ClickOnce estaba habilitado.

Lo desmarqué y el problema desapareció.

Chand
fuente
1

Los usuarios de Windows 10 pueden encontrarlo signtool.exeen C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64carpeta ( 10.0.18362.0en mi caso, u otra versión).


Pero primero, asegúrese de haber instalado Windows 10 SDK

Luego, verifique si Windows SDK Signing Tools for Desktop Appsestá instalado yendo a Control Panel > Programs > Programs and Features, elija Windows Software Development Kit - Windows 10.0.18362.1 (en mi caso, su versión puede ser diferente), haga clic derecho, elija Change, elija opciones y Changeluego haga clic Next.

Tan Le
fuente
1

Tuve el mismo problema / mensaje de error justo después de actualizar Visual Studio Pro 2019 V16.6.0. La solución fue asegurarse de que el certificado de firma sea válido ya que el mío había expirado por un día.

Busque en las propiedades y firme para ingresar un certificado válido o temporal. Para mantener el nombre del archivo igual que antes, des-haga clic en la seguridad como se mencionó anteriormente y luego elimine el archivo de clave vinculado al programa.

Cree un nuevo archivo de claves y luego vuelva a agregar la seguridad.

James
fuente
0

Después de actualizar las herramientas de compilación en el agente de compilación de DevOps a Visual Studio 2019, comenzamos a recibir el siguiente error para el paso de compilación de 64 bits de una aplicación WPF.

C: \ Archivos de programa (x86) \ Microsoft Visual Studio \ 2019 \ Professional \ MSBuild \ Current \ Bin \ amd64 \ Microsoft.Common.CurrentVersion.targets (3975,5): error MSB3482: se produjo un error al firmar: SignTool.exe no se encontró en el camino

Intenté todas las respuestas anteriores, excepto las que deshabilitan la firma o la seguridad de la firma y nada ayudó.

Deshabilitado el paso predeterminado MSBUILD ingrese la descripción de la imagen aquí

Se agregó un paso de aviso de cmd ingrese la descripción de la imagen aquí

La ruta es "C: \ Archivos de programa (x86) \ Microsoft Visual Studio \ 2019 \ Professional \ MSBuild \ Current \ Bin \ MsBuild.exe"

Nota : Se eliminó amd64 de la ruta anterior.

Esta sigue siendo una solución alternativa. Espero que Microsoft lo solucione en la siguiente versión.

Sundeep
fuente