@JrTabuloc Estoy usando VS 2015 y no tengo signtool.exe en% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0A \ Bin
Loint
4
Windows 10 WDK se instala de forma predeterminada en la ruta "% ProgramFiles (x86)% \ Windows Kits \ 10". Intente buscar en "% ProgramFiles (x86)% \ Windows Kits \ 10 \ bin \ x86" si la herramienta ya existe.
hal
También puede intentar utilizar las rutas "% WindowsSdkDir% \ bin \ x86" o "% WindowsSdkDir% \ bin \ x64". Si no tiene la variable de entorno "% WindowsSdkDir%" en el shell de la línea de comandos, puede llamar a algo como "% VS140COMNTOOLS% .. \ .. \ vc \ vcvarsall.bat" para ello.
hal
@hal Encontré signtool.exe y lo copié en% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0 \ Bin. Intenté compilar la solución nuevamente pero arrojó un nuevo error Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
Loint
Respuestas:
120
Necesita instalar el SDK de Windows 10.
Visual Studio 2015 Update 1 ya lo contiene, pero no está instalado de forma predeterminada. Debe ir al Panel de control -> Programas y características, buscar Microsoft Visual Studio 2015 y seleccionar "Cambiar".
Se iniciará la instalación de Visual Studio 2015. Seleccione "Modificar".
En la lista de componentes de Visual Studio, busque "Herramientas universales de desarrollo de aplicaciones de Windows", abra la lista de subelementos y seleccione "Windows 10 SDK (10.0.10240)".
Por lo que vale, si todo lo que necesita es signtool.exe, en el instalador de SDK 10, la única característica que necesita habilitar es el Kit de desarrollo de software de Windows que le ahorra alrededor de 400 MB. No mucho, pero es algo.
mateuscb
3
@Steve Bienvenido al maravilloso mundo del desarrollo de Windows, donde la hinchazón es una característica
gillonba
3
La última cifra de hoy para Visual Studio 2017 requirió 6.28 GB para esta herramienta.
@mateuscb Miré un poco más en esto y sí, tienes razón: funciona bien para evitar la instalación por completo y simplemente copiar los archivos. Consulte mi respuesta más abajo en esta pregunta para obtener todos los detalles.
Per Lundberg
46
Si solo desea SignTool y realmente desea minimizar la instalación, aquí hay una forma en la que simplemente hice ingeniería inversa para:
Instale el Installers/Windows SDK Signing Tools-x86_en-us.msiarchivo: solo tiene 388 KiB de tamaño. Como referencia, extrae sus archivos de los siguientes .cabarchivos, por lo que también son necesarios para una instalación independiente:
4c3ef4b2b1dc72149f979f4243d2accf.cab (339 KiB)
685f3d4691f444bc382762d603a99afc.cab (1002 KiB)
e5c4b31ff9997ac5603f4f28cd7df602.cab (389 KiB)
e98fa5eb5fee6ce17a7a69d585870b7c.cab (1,2 MiB)
Ahí vamos: ahora tendrá el signtool.exearchivo y los complementos en C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64(reemplácelo x64con x86, armo arm64si lo necesita para otra arquitectura de CPU).
También es posible comprometer signtool.exey los otros archivos de esta carpeta en su repositorio de control de versiones si desea utilizarlo, por ejemplo, en escenarios de CI. Lo he probado y parece funcionar bien.
( Es probable que todos los archivos no sean necesarios, ya que también hay algunas otras .exeherramientas en esta carpeta que podrían ser responsables de estas dependencias, pero no estoy seguro de cuáles podrían eliminarse para hacer que el conjunto de archivos sea aún más pequeño. Alguien más puede investigar más en esta área. :) Traté de copiar signtool.*y eso no funcionó, por lo que se necesitan al menos algunos de los otros archivos).
De hecho, esto es todo lo que tiene que hacer para que signtool.exe se instale.
antes del
Gran sugerencia. Fácil de implementar. Gracias por averiguarlo y publicar su solución aquí.
RobertFrank
Perfecto. Solo necesitaba la signtool. Nada de la pelusa extra. Por cierto, hacer clic derecho en los archivos .cab y seleccionar installno funcionó para mí. Recibí el errorThe system cannot find the file specified.
frakman1
2
Aún más fácil: monte el .iso y luego ejecute "Installers \ Windows SDK Signing Tools-x86_en-us"
Russell Phillips
@RussellPhillips Sí, eso es básicamente lo que digo arriba. Para algunos casos de uso, montar el .isoes más fácil, pero para otros, es posible que desee tomar el binario junto con todas las dependencias (por ejemplo, registrarse signtool.exey sus amigos en su repositorio de git y firmar compilaciones en AppVeyor, Jenkins, etc.)
Per Lundberg
22
Es 2019 ahora :) Para cualquiera que se pregunte, aquí es donde lo encontrará:
Visual Studio 2019 v.16.5.4. y Windows 10 SDK (10.0.18362.0): esta respuesta es la correcta para mí. (Ambas versiones son las más recientes en el momento de escribir este artículo - 29.04.2020)
Derptastic
20
Según los comentarios en la pregunta ... En Windows 10, Signtool.exe y otras herramientas SDK se han movido a "% programfiles (x86)% \ Windows Kits \" .
Ruta típica a signtool en Windows 10.
32 bit = "c: \ Archivos de programa (x86) \ Kits de Windows \ 10 \ bin \ x86 \ signtool.exe"
64 bit = "c: \ Archivos de programa (x86) \ Kits de Windows \ 10 \ bin \ x64 \ signtool.exe"
Las herramientas para SDK 8.0 y 8.1 también se encuentran en la carpeta "Kits de Windows".
Eso no responde la pregunta. ¿Cómo se instala en primer lugar? No hay nada en esas carpetas en mi sistema, incluso con Visual Studio instalado.
NickG
+1 Trabajé aquí en la caja de Windows 10: usando el instalador principal de Visual Studio, tuve que instalar el SDK de Win 10 (NO 8.1) y luego tuve SignTool.exe
En 2019, este es un enlace bastante reciente de Microsoft sobre cómo obtener esta herramienta:
La herramienta SignTool es una herramienta de línea de comandos que firma digitalmente archivos, verifica firmas en archivos o marcas de tiempo en archivos. Para obtener información sobre la importancia de firmar archivos, consulte Introducción a la firma de código. La herramienta se instala en la carpeta \ Bin de la ruta de instalación del Kit de desarrollo de software (SDK) de Microsoft Windows.
Solo necesitaba signtool, así que elegí el mínimo que se me ocurrió y signtool.exe ahora está en C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Si está utilizando VS Express 2015, simplemente vaya a su panel de control -> programas y características -> seleccione vs 2015 -> haga clic en cambiar, luego en el instalador de VS Express seleccione 'Modificar' -> seleccione Herramientas de publicación, y acaba. Una vez que la instalación complete los cambios, podrá crear su instalador.
Gracias. Estaba destrozando mi cerebro tratando de publicar.
Brack
1
Debe ir al Panel de control -> Programas y características, buscar Microsoft Visual Studio 2015 y seleccionar "Cambiar". Se iniciará la instalación de Visual Studio 2015. Seleccione "Modificar".
En la lista de componentes de Visual Studio, abra la lista de subelementos y seleccione "Herramientas de publicación ClickOnce" y "Windows 10 SDK" también.
Hice una modificación con Visual Studio desde el Panel de control, Programas y características. El SDK no era aparente al principio, así que instalé las herramientas comunes que, he aquí, incluían la Actualización 3 del SDK.
¿Ha enfrentado el problema descrito en la pregunta y lo que describe lo solucionó? Por favor aclare eso en su respuesta. Saludos cordiales
YakovL
0
Está disponible en muchos, muchos lugares, dependiendo de lo que esté instalado: en mi caja, todos excepto la versión v6.0A SDK admiten la opción / fd.
para instalar solo las herramientas de firma de winsdksetup.exe (disponible en la misma url que la iso de Windows SDK mencionada anteriormente) esta es una opción para, directamente desde el Dockerfile en el que estoy trabajando: EJECUTAR powershell Start-Process winsdksetup.exe -ArgumentList '/ features OptionId.SigningTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait
entonces, si está en Windows, entonces sería: winsdksetup.exe / features OptionId.SigningTools
winsdksetup / h le da las opciones, así que no las resumiré aquí. Incluyo el fragmento de dockerfile, ya que eso es lo que comencé mi día buscando la solución.
Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
Respuestas:
Necesita instalar el SDK de Windows 10.
Se iniciará la instalación de Visual Studio 2015. Seleccione "Modificar".
En la lista de componentes de Visual Studio, busque "Herramientas universales de desarrollo de aplicaciones de Windows", abra la lista de subelementos y seleccione "Windows 10 SDK (10.0.10240)".
SDK de Windows 10 en la instalación de VS 2015 Update 1
Como ya escribió josant, cuando finalice la instalación, encontrará SignTool.exe en las carpetas:
fuente
C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x86
|C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64
Si solo desea SignTool y realmente desea minimizar la instalación, aquí hay una forma en la que simplemente hice ingeniería inversa para:
.iso
archivo de https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk (el enlace de descarga actual es http://go.microsoft.com/fwlink/p/?LinkID=2022797 ) La.exe
descarga no funcionará , ya que es un instalador en línea que elimina sus dependencias en tiempo de ejecución..iso
con una herramienta como 7-zip .Installers/Windows SDK Signing Tools-x86_en-us.msi
archivo: solo tiene 388 KiB de tamaño. Como referencia, extrae sus archivos de los siguientes.cab
archivos, por lo que también son necesarios para una instalación independiente:4c3ef4b2b1dc72149f979f4243d2accf.cab
(339 KiB)685f3d4691f444bc382762d603a99afc.cab
(1002 KiB)e5c4b31ff9997ac5603f4f28cd7df602.cab
(389 KiB)e98fa5eb5fee6ce17a7a69d585870b7c.cab
(1,2 MiB)Ahí vamos: ahora tendrá el
signtool.exe
archivo y los complementos enC:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64
(reemplácelox64
conx86
,arm
oarm64
si lo necesita para otra arquitectura de CPU).También es posible comprometer
signtool.exe
y los otros archivos de esta carpeta en su repositorio de control de versiones si desea utilizarlo, por ejemplo, en escenarios de CI. Lo he probado y parece funcionar bien.( Es probable que todos los archivos no sean necesarios, ya que también hay algunas otras
.exe
herramientas en esta carpeta que podrían ser responsables de estas dependencias, pero no estoy seguro de cuáles podrían eliminarse para hacer que el conjunto de archivos sea aún más pequeño. Alguien más puede investigar más en esta área. :) Traté de copiarsigntool.*
y eso no funcionó, por lo que se necesitan al menos algunos de los otros archivos).fuente
install
no funcionó para mí. Recibí el errorThe system cannot find the file specified.
.iso
es más fácil, pero para otros, es posible que desee tomar el binario junto con todas las dependencias (por ejemplo, registrarsesigntool.exe
y sus amigos en su repositorio de git y firmar compilaciones en AppVeyor, Jenkins, etc.)Es 2019 ahora :) Para cualquiera que se pregunte, aquí es donde lo encontrará:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit
Captura de pantalla:
fuente
Según los comentarios en la pregunta ... En Windows 10, Signtool.exe y otras herramientas SDK se han movido a "% programfiles (x86)% \ Windows Kits \" .
Ruta típica a signtool en Windows 10.
Las herramientas para SDK 8.0 y 8.1 también se encuentran en la carpeta "Kits de Windows".
fuente
Ubicación:
fuente
En 2019, este es un enlace bastante reciente de Microsoft sobre cómo obtener esta herramienta:
Solo necesitaba signtool, así que elegí el mínimo que se me ocurrió y signtool.exe ahora está en
C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Enlace al artículo de Microsoft: https://docs.microsoft.com/en-us/windows/win32/seccrypto/signtool
fuente
28 de abril de 2020
Lo encontré aquí:
fuente
Si está utilizando VS Express 2015, simplemente vaya a su panel de control -> programas y características -> seleccione vs 2015 -> haga clic en cambiar, luego en el instalador de VS Express seleccione 'Modificar' -> seleccione Herramientas de publicación, y acaba. Una vez que la instalación complete los cambios, podrá crear su instalador.
fuente
Debe ir al Panel de control -> Programas y características, buscar Microsoft Visual Studio 2015 y seleccionar "Cambiar". Se iniciará la instalación de Visual Studio 2015. Seleccione "Modificar".
En la lista de componentes de Visual Studio, abra la lista de subelementos y seleccione "Herramientas de publicación ClickOnce" y "Windows 10 SDK" también.
fuente
Hice una modificación con Visual Studio desde el Panel de control, Programas y características. El SDK no era aparente al principio, así que instalé las herramientas comunes que, he aquí, incluían la Actualización 3 del SDK.
fuente
Está disponible en muchos, muchos lugares, dependiendo de lo que esté instalado: en mi caja, todos excepto la versión v6.0A SDK admiten la opción / fd.
fuente
SignTool está disponible como parte del SDK de Windows (que viene con Visual Studio Community 2015 ). Asegúrese de seleccionar las " Herramientas de publicación ClickOnce " de la lista de funciones durante la instalación de Visual Studio 2015 para obtener SignTool.
Una vez que Visual Studio está instalado, puede ejecutar el
signtool
comando desde el símbolo del sistema de Visual Studio .De forma predeterminada (en Windows 10), SignTool se instalará en:
C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe
fuente
para instalar solo las herramientas de firma de winsdksetup.exe (disponible en la misma url que la iso de Windows SDK mencionada anteriormente) esta es una opción para, directamente desde el Dockerfile en el que estoy trabajando: EJECUTAR powershell Start-Process winsdksetup.exe -ArgumentList '/ features OptionId.SigningTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait
entonces, si está en Windows, entonces sería: winsdksetup.exe / features OptionId.SigningTools
winsdksetup / h le da las opciones, así que no las resumiré aquí. Incluyo el fragmento de dockerfile, ya que eso es lo que comencé mi día buscando la solución.
fuente