@JrTabuloc Estou usando o VS 2015 e não tenho signtool.exe em% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0A \ Bin
Loint
4
Windows 10 WDK é instalado por padrão no caminho "% ProgramFiles (x86)% \ Windows Kits \ 10". Tente olhar em "% ProgramFiles (x86)% \ Windows Kits \ 10 \ bin \ x86" se a ferramenta já existe.
Hal
Você também pode tentar usar os caminhos "% WindowsSdkDir% \ bin \ x86" ou "% WindowsSdkDir% \ bin \ x64". Se você não tiver a variável de ambiente "% WindowsSdkDir%" no shell da linha de comando, pode chamar algo como "% VS140COMNTOOLS% .. \ .. \ vc \ vcvarsall.bat" para ela.
Hal
@hal Eu encontrei signtool.exe e copiei em% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0 \ Bin. Tentei construir a solução novamente, mas Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
gerou
Respostas:
121
Você precisa instalar o Windows 10 SDK.
O Visual Studio 2015 Update 1 já o contém, mas não é instalado por padrão. Você deve ir ao Painel de Controle -> Programas e Recursos, encontrar o Microsoft Visual Studio 2015 e selecionar "Alterar".
A configuração do Visual Studio 2015 será iniciada. Selecione "Modificar".
Na lista de componentes do Visual Studio, encontre "Ferramentas de desenvolvimento de aplicativos universais do Windows", abra a lista de subitens e selecione "Windows 10 SDK (10.0.10240)".
Pelo que vale a pena, se tudo que você precisa é signtool.exe, no instalador do SDK 10, o único recurso que você precisa habilitar é o Windows Software Development Kit que economiza cerca de 400 MB. Não muito, mas é alguma coisa.
mateuscb
3
@Steve Bem-vindo ao maravilhoso mundo do desenvolvimento do Windows, onde o inchaço é uma característica
gillonba
3
O último número de hoje para o Visual Studio 2017 exigiu 6,28 GB para esta ferramenta.
@mateuscb Pesquisei um pouco mais sobre isso e sim, você está certo - funciona bem para evitar a instalação por completo e apenas copiar os arquivos. Veja minha resposta mais abaixo nesta pergunta para os detalhes completos.
Per Lundberg,
47
Se você deseja apenas o SignTool e realmente deseja minimizar a instalação, aqui está uma maneira que fiz a engenharia reversa para:
Instale o Installers/Windows SDK Signing Tools-x86_en-us.msiarquivo - ele tem apenas 388 KiB. Para referência, ele extrai seus arquivos dos seguintes .cabarquivos, portanto, eles também são necessários para uma instalação autônoma:
4c3ef4b2b1dc72149f979f4243d2accf.cab (339 KiB)
685f3d4691f444bc382762d603a99afc.cab (1002 KiB)
e5c4b31ff9997ac5603f4f28cd7df602.cab (389 KiB)
e98fa5eb5fee6ce17a7a69d585870b7c.cab (1,2 MiB)
Pronto - agora você terá o signtool.exearquivo e seus acompanhantes C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64(substitua x64por ou x86, se necessário, para outra arquitetura de CPU).armarm64
Também é possível confirmar signtool.exee os outros arquivos desta pasta em seu repositório de controle de versão se quiser usá-lo, por exemplo, em cenários de CI. Eu tentei e parece funcionar bem.
( Provavelmente, todos os arquivos não são necessários, pois também existem algumas outras .exeferramentas nesta pasta que podem ser responsáveis por essas dependências, mas não tenho certeza de quais poderiam ser removidas para tornar o conjunto de arquivos ainda menor. Alguém está livre para investigar mais adiante nesta área. :) Tentei apenas copiar signtool.*e não funcionou, então pelo menos alguns dos outros arquivos são necessários.)
Na verdade, isso é tudo que você precisa fazer para instalar o signtool.exe.
predi de
Ótima sugestão. Fácil de implementar. Obrigado por descobrir e postar sua solução aqui.
RobertFrank
Perfeito. Eu só precisava da placa sinalizadora. Nenhum dos fluff extra. A propósito, clicar com o botão direito do mouse nos arquivos .cab e selecionar installnão funcionou para mim. Recebi o erroThe system cannot find the file specified.
frakman1
2
Ainda mais fácil: monte o .iso e execute "Installers \ Windows SDK Signing Tools-x86_en-us"
Russell Phillips
@RussellPhillips Sim, é basicamente o que declarei acima. Para alguns casos de uso, montar o .isoé mais fácil, mas para outros, você pode querer pegar o binário junto com todas as dependências (por exemplo, fazer check-in signtool.exee amigos em seu repositório git e assinar compilações no AppVeyor, Jenkins etc.)
Por Lundberg
23
É 2019 agora :) Para quem está se perguntando, aqui é onde você vai encontrar:
Visual Studio 2019 v.16.5.4. e Windows 10 SDK (10.0.18362.0) - esta resposta é a correta para mim. (ambas as versões são as mais recentes no momento da escrita
29/04/2020
21
De acordo com os comentários na pergunta ... No Windows 10, Signtool.exe e outras ferramentas SDK foram movidas para "% programfiles (x86)% \ Windows Kits \" .
Caminho típico para signtool no Windows 10.
32 bits = "c: \ Arquivos de programas (x86) \ Windows Kits \ 10 \ bin \ x86 \ signtool.exe"
64 bits = "c: \ Arquivos de programas (x86) \ Windows Kits \ 10 \ bin \ x64 \ signtool.exe"
As ferramentas para SDK 8.0 e 8.1 também residem na pasta "Kits do Windows".
Isso não responde à pergunta. Como você instala em primeiro lugar? Não há nada nessas pastas em meu sistema - mesmo com o Visual Studio instalado.
NickG
+1 Trabalhei aqui no box do Windows 10 - Usando o instalador principal do Visual Studio tive que instalar o Win 10 SDK (NÃO 8.1) então tive SignTool.exe
Somente quando você tiver instalado o Windows 10 SDK.
Yannici
2
Em 2019, este é um link bastante recente da Microsoft sobre como obter esta ferramenta:
A ferramenta SignTool é uma ferramenta de linha de comando que assina arquivos digitalmente, verifica assinaturas em arquivos ou arquivos de registro de data e hora. Para obter informações sobre por que assinar arquivos é importante, consulte Introdução à assinatura de código. A ferramenta é instalada na pasta \ Bin do caminho de instalação do Microsoft Windows Software Development Kit (SDK).
Eu só precisava do signtool, então escolhi o mínimo que criei e o signtool.exe agora está em C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Se você estiver usando o VS Express 2015, vá para o painel de controle -> programas e recursos -> selecione vs 2015 -> clique em alterar e, em seguida, no instalador do VS Express selecione 'Modificar' -> selecione Ferramentas de publicação, e acabou. Assim que a configuração terminar as alterações, você poderá criar seu instalador.
Obrigado. Eu estava arrancando meu cérebro tentando publicar.
Brack
1
Você deve ir ao Painel de Controle -> Programas e Recursos, encontrar o Microsoft Visual Studio 2015 e selecionar "Alterar". A configuração do Visual Studio 2015 será iniciada. Selecione "Modificar".
Na lista de componentes do Visual Studio, abra a lista de subitens e selecione "ClickOnce Publication Tools" e "Windows 10 SDK" também.
Eu fiz uma modificação com o Visual Studio do Painel de Controle, Programas e Recursos. O SDK não estava aparente a princípio, então instalei as Ferramentas Comuns que, vejam só, incluíam a Atualização 3 do SDK.
Você enfrentou o problema descrito na pergunta e o que você descreveu corrigiu isso? Esclareça isso em sua resposta. Atenciosamente
YakovL
0
Está disponível em muitos, muitos lugares, dependendo do que está instalado: Na minha caixa, todos, exceto a versão v6.0A SDK, oferecem suporte à opção / fd.
para instalar apenas as ferramentas de assinatura do winsdksetup.exe (disponível no mesmo url que o Windows SDK iso mencionado acima), esta é uma opção para, direto do Dockerfile em que estou trabalhando: RUN powershell Start-Process winsdksetup.exe -ArgumentList '/ features OptionId.SigningTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait
então, se você estiver no Windows, será: winsdksetup.exe / features OptionId.SigningTools
winsdksetup / h fornece as opções, então não vou resumi-las aqui. Incluo o snippet dockerfile, pois foi para isso que comecei meu dia procurando a solução.
Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
Respostas:
Você precisa instalar o Windows 10 SDK.
A configuração do Visual Studio 2015 será iniciada. Selecione "Modificar".
Na lista de componentes do Visual Studio, encontre "Ferramentas de desenvolvimento de aplicativos universais do Windows", abra a lista de subitens e selecione "Windows 10 SDK (10.0.10240)".
Windows 10 SDK na configuração da atualização 1 do VS 2015
Como josant já escreveu - quando a instalação terminar você encontrará o SignTool.exe nas pastas:
fonte
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
Se você deseja apenas o SignTool e realmente deseja minimizar a instalação, aqui está uma maneira que fiz a engenharia reversa para:
.iso
arquivo em https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk (o link de download atual é http://go.microsoft.com/fwlink/p/?LinkID=2022797 ) O.exe
download não funcionará , pois é um instalador online que puxa para baixo suas dependências em tempo de execução..iso
com uma ferramenta como o 7-zip .Installers/Windows SDK Signing Tools-x86_en-us.msi
arquivo - ele tem apenas 388 KiB. Para referência, ele extrai seus arquivos dos seguintes.cab
arquivos, portanto, eles também são necessários para uma instalação autônoma:4c3ef4b2b1dc72149f979f4243d2accf.cab
(339 KiB)685f3d4691f444bc382762d603a99afc.cab
(1002 KiB)e5c4b31ff9997ac5603f4f28cd7df602.cab
(389 KiB)e98fa5eb5fee6ce17a7a69d585870b7c.cab
(1,2 MiB)Pronto - agora você terá o
signtool.exe
arquivo e seus acompanhantesC:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64
(substituax64
por oux86
, se necessário, para outra arquitetura de CPU).arm
arm64
Também é possível confirmar
signtool.exe
e os outros arquivos desta pasta em seu repositório de controle de versão se quiser usá-lo, por exemplo, em cenários de CI. Eu tentei e parece funcionar bem.( Provavelmente, todos os arquivos não são necessários, pois também existem algumas outras
.exe
ferramentas nesta pasta que podem ser responsáveis por essas dependências, mas não tenho certeza de quais poderiam ser removidas para tornar o conjunto de arquivos ainda menor. Alguém está livre para investigar mais adiante nesta área. :) Tentei apenas copiarsigntool.*
e não funcionou, então pelo menos alguns dos outros arquivos são necessários.)fonte
install
não funcionou para mim. Recebi o erroThe system cannot find the file specified.
.iso
é mais fácil, mas para outros, você pode querer pegar o binário junto com todas as dependências (por exemplo, fazer check-insigntool.exe
e amigos em seu repositório git e assinar compilações no AppVeyor, Jenkins etc.)É 2019 agora :) Para quem está se perguntando, aqui é onde você vai encontrar:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit
Captura de tela:
fonte
De acordo com os comentários na pergunta ... No Windows 10, Signtool.exe e outras ferramentas SDK foram movidas para "% programfiles (x86)% \ Windows Kits \" .
Caminho típico para signtool no Windows 10.
As ferramentas para SDK 8.0 e 8.1 também residem na pasta "Kits do Windows".
fonte
Localização:
fonte
Em 2019, este é um link bastante recente da Microsoft sobre como obter esta ferramenta:
Eu só precisava do signtool, então escolhi o mínimo que criei e o signtool.exe agora está em
C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Link do artigo da Microsoft: https://docs.microsoft.com/en-us/windows/win32/seccrypto/signtool
fonte
28 de abril de 2020
Eu encontrei aqui:
fonte
Se você estiver usando o VS Express 2015, vá para o painel de controle -> programas e recursos -> selecione vs 2015 -> clique em alterar e, em seguida, no instalador do VS Express selecione 'Modificar' -> selecione Ferramentas de publicação, e acabou. Assim que a configuração terminar as alterações, você poderá criar seu instalador.
fonte
Você deve ir ao Painel de Controle -> Programas e Recursos, encontrar o Microsoft Visual Studio 2015 e selecionar "Alterar". A configuração do Visual Studio 2015 será iniciada. Selecione "Modificar".
Na lista de componentes do Visual Studio, abra a lista de subitens e selecione "ClickOnce Publication Tools" e "Windows 10 SDK" também.
fonte
Eu fiz uma modificação com o Visual Studio do Painel de Controle, Programas e Recursos. O SDK não estava aparente a princípio, então instalei as Ferramentas Comuns que, vejam só, incluíam a Atualização 3 do SDK.
fonte
Está disponível em muitos, muitos lugares, dependendo do que está instalado: Na minha caixa, todos, exceto a versão v6.0A SDK, oferecem suporte à opção / fd.
fonte
SignTool está disponível como parte do Windows SDK (que acompanha o Visual Studio Community 2015 ). Certifique-se de selecionar " ClickOnce Publishing Tools " na lista de recursos durante a instalação do Visual Studio 2015 para obter o SignTool.
Depois que o Visual Studio estiver instalado, você pode executar o
signtool
comando no Prompt de Comando do Visual Studio .Por padrão (no Windows 10), o SignTool será instalado em:
C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe
fonte
para instalar apenas as ferramentas de assinatura do winsdksetup.exe (disponível no mesmo url que o Windows SDK iso mencionado acima), esta é uma opção para, direto do Dockerfile em que estou trabalhando: RUN powershell Start-Process winsdksetup.exe -ArgumentList '/ features OptionId.SigningTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait
então, se você estiver no Windows, será: winsdksetup.exe / features OptionId.SigningTools
winsdksetup / h fornece as opções, então não vou resumi-las aqui. Incluo o snippet dockerfile, pois foi para isso que comecei meu dia procurando a solução.
fonte
Melhor solução no final de 2020:
Basta baixar o SDK do Windows 10 da Microsoft aqui:
https://go.microsoft.com/fwlink/?LinkID=698771
Na configuração, escolha apenas o aplicativo de certificação de aplicativos do Windows (tem apenas 120 MB)
Você pode encontrar signtool.exe aqui:
% PROGRAMFILES (X86)% \ Windows Kits \ 10 \ bin \ x64
Felicidades!
fonte