Jak zainstalować SignTool.exe dla systemu Windows 10


94

Jak zainstalować SignTool.exe w programie Visual Studio 2015 dla Windown 10? Próbowałem zbudować projekt, ale program wyrzucił błąd:

Błąd Wystąpił błąd podczas podpisywania: Nie znaleziono SignTool.exe.


spróbuj zajrzeć do% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0A \ Bin, jeśli narzędzie już istnieje. Zobacz blogs.msdn.com/b/vsnetsetup/archive/2013/11/18/… .
jtabuloc

@JrTabuloc Używam VS 2015 i nie mam signtool.exe w% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0A \ Bin
Loint

4
Windows 10 WDK jest instalowany domyślnie w ścieżce „% ProgramFiles (x86)% \ Windows Kits \ 10”. Spróbuj sprawdzić w „% ProgramFiles (x86)% \ Windows Kits \ 10 \ bin \ x86”, jeśli narzędzie już istnieje.
koniec

Możesz także spróbować użyć ścieżek „% WindowsSdkDir% \ bin \ x86” lub „% WindowsSdkDir% \ bin \ x64”. Jeśli nie masz zmiennej środowiskowej „% WindowsSdkDir%” w powłoce wiersza poleceń, możesz wywołać dla niej coś w rodzaju „% VS140COMNTOOLS% .. \ .. \ vc \ vcvarsall.bat”.
koniec

@hal Znalazłem signtool.exe i skopiowałem do% programfiles (x86)% \ Microsoft SDKs \ Windows \ v7.0 \ Bin. Próbowałem ponownie zbudować rozwiązanie, ale wyrzuciło nowy błąd Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
Loint

Odpowiedzi:


121

Musisz zainstalować zestaw Windows 10 SDK.

  1. Visual Studio 2015 Update 1 już go zawiera, ale nie jest instalowany domyślnie. Należy przejść do Panelu sterowania -> Programy i funkcje, znaleźć Microsoft Visual Studio 2015 i wybrać „Zmień”.

Rozpocznie się instalacja programu Visual Studio 2015. Wybierz „Modyfikuj”.

Na liście składników programu Visual Studio znajdź „Universal Windows App Development Tools”, otwórz listę elementów podrzędnych i wybierz „Windows 10 SDK (10.0.10240)”.

Windows 10 SDK w instalacji VS 2015 Update 1

  1. Oczywiście możesz zainstalować Windows 10 SDK bezpośrednio od firmy Microsoft: https://go.microsoft.com/fwlink/?LinkID=698771

Jak już pisał josant - po zakończeniu instalacji w folderach znajdziemy SignTool.exe:

  • x86 -> c: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x86
  • x64 -> c: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x64 \

27
Co jest warte, jeśli wszystko, czego potrzebujesz, to signtool.exe, w instalatorze From SDK 10 jedyną funkcją, którą musisz włączyć, jest zestaw Windows Software Development Kit, który pozwala zaoszczędzić około 400 MB. Niewiele, ale to coś.
mateuscb

3
@Steve Witamy w cudownym świecie programowania Windows, w którym nadużywanie jest funkcją
gillonba

3
Najnowsze dane dotyczące programu Visual Studio 2017 wymagały 6,28 GB dla tego narzędzia.
hughes

3
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
CJBS

1
@mateuscb Rozejrzałem się nieco dalej i tak, masz rację - działa dobrze, aby całkowicie uniknąć instalacji i po prostu skopiować pliki. Zobacz moją odpowiedź w dalszej części tego pytania, aby uzyskać szczegółowe informacje.
Per Lundberg

47

Jeśli chcesz tylko SignTool i naprawdę chcesz zminimalizować instalację, oto sposób, w jaki po prostu odtworzyłem moją drogę do:

  1. Pobierz .isoplik z https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk (aktualne łącze do pobrania to http://go.microsoft.com/fwlink/p/?LinkID=2022797 ) Do .exepobrania nie będzie działać , ponieważ jest to instalator internetowy, który ściąga jego zależnościami przy starcie.
  2. Rozpakuj .isoza pomocą narzędzia takiego jak 7-zip .
  3. Zainstaluj Installers/Windows SDK Signing Tools-x86_en-us.msiplik - ma tylko 388 KiB. Dla porównania, pobiera swoje pliki z następujących .cabplików, więc są one również potrzebne do instalacji samodzielnej:
    • 4c3ef4b2b1dc72149f979f4243d2accf.cab (339 KiB)
    • 685f3d4691f444bc382762d603a99afc.cab (1002 KiB)
    • e5c4b31ff9997ac5603f4f28cd7df602.cab (389 KiB)
    • e98fa5eb5fee6ce17a7a69d585870b7c.cab (1,2 MiB)

Nie możemy iść - będzie teraz mieć signtool.exeplik i towarzysze C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64(wymienić x64z x86, armlub arm64jeśli jest to potrzebne dla innej architektury CPU).


Możliwe jest również zatwierdzenie signtool.exei inne pliki z tego folderu do repozytorium kontroli wersji, jeśli chcesz go użyć np. W scenariuszach CI. Wypróbowałem to i wydaje się, że działa dobrze.

( Prawdopodobnie wszystkie pliki nie są potrzebne, ponieważ .exew tym folderze znajdują się również inne narzędzia, które mogą być odpowiedzialne za te zależności, ale nie jestem pewien, które z nich można usunąć, aby zestaw plików był jeszcze mniejszy. Ktoś inny może to zbadać dalej w tym obszarze. :) Próbowałem po prostu skopiować signtool.*i to nie zadziałało, więc przynajmniej niektóre inne pliki są potrzebne.)


1
To rzeczywiście wszystko, co musisz zrobić, aby zainstalować signtool.exe.
predi

Świetna sugestia. Łatwe do wdrożenia. Dziękujemy za zrobienie tego i opublikowanie tutaj rozwiązania.
RobertFrank

Doskonały. Potrzebowałem tylko narzędzia signtool. Żadnego dodatkowego puchu. Nawiasem mówiąc, kliknięcie prawym przyciskiem myszy plików .cab i wybranie installnie zadziałało. Otrzymałem błądThe system cannot find the file specified.
frakman1

2
Jeszcze łatwiej: zamontuj plik .iso, a następnie uruchom „Installers \ Windows SDK Signing Tools-x86_en-us”
Russell Phillips

@RussellPhillips Tak, to w zasadzie to, co stwierdzam powyżej. W niektórych przypadkach montowanie .isojest łatwiejsze, ale w innych możesz chcieć pobrać plik binarny wraz ze wszystkimi zależnościami (np. Aby signtool.exezalogować się i znajomych do repozytorium git i podpisać kompilacje w AppVeyor, Jenkins itp.)
Per Lundberg

24

Teraz jest 2019 rok :) Dla każdego, kto się zastanawia, oto gdzie go znajdziesz:

C:\Program Files (x86)\Windows Kits\10\App Certification Kit

Zrzut ekranu:


wprowadź opis obrazu tutaj

Edycja: nadal w tym samym miejscu w 2020 roku.


Visual Studio 2019 16.5.4. i Windows 10 SDK (10.0.18362.0) - ta odpowiedź jest dla mnie poprawna. (obie wersje są najnowsze w momencie pisania - 29.04.2020)
Derptastic

21

Zgodnie z komentarzami w pytaniu ... W systemie Windows 10 Signtool.exe i inne narzędzia SDK zostały przeniesione do „% programfiles (x86)% \ Windows Kits \” .

Typowa ścieżka do narzędzia signtool w systemie Windows 10.

  • 32-bitowy = „c: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x86 \ signtool.exe”
  • 64-bitowy = „c: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ x64 \ signtool.exe”

Narzędzia dla SDK 8.0 i 8.1 również znajdują się w folderze „Windows Kits”.


4
To nie odpowiada na pytanie. Jak to zainstalować w pierwszej kolejności? Nie ma nic w tych folderach w moim systemie - nawet po zainstalowaniu programu Visual Studio.
NickG,

+1 Pracowałem tutaj na pudełku z Windows 10 - Używając głównego instalatora Visual Studio musiałem zainstalować zestaw SDK Win 10 (NIE 8.1), a potem miałem SignTool.exe
Tino Mclaren

6

Lokalizacja:

C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe

Tylko po zainstalowaniu zestawu SDK systemu Windows 10.
Yannici

2

W 2019 roku jest to całkiem nowe łącze od firmy Microsoft dotyczące sposobu uzyskania tego narzędzia:

Narzędzie SignTool to narzędzie wiersza poleceń, które cyfrowo podpisuje pliki, weryfikuje podpisy w plikach lub oznacza pliki ze znacznikami czasu. Aby uzyskać informacje o tym, dlaczego podpisywanie plików jest ważne, zobacz wprowadzenie do podpisywania kodu. Narzędzie jest instalowane w folderze \ Bin ścieżki instalacyjnej zestawu Microsoft Windows Software Development Kit (SDK).

SignTool jest dostępny jako część Windows SDK, który można pobrać ze strony https://go.microsoft.com/fwlink/p/?linkid=84091 .

Potrzebowałem tylko narzędzia signtool, więc wybrałem minimum, które wymyśliłem, i signtool.exe jest teraz w pliku C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe

Wybór instalacji

Link do artykułu firmy Microsoft: https://docs.microsoft.com/en-us/windows/win32/seccrypto/signtool


2

28 kwietnia 2020

Znalazłem to tutaj:

C:\Program Files (x86)\Windows Kits\10\App Certification Kit

1

Jeśli używasz VS Express 2015, po prostu przejdź do panelu sterowania -> programy i funkcje -> wybierz vs 2015 -> kliknij zmień, a następnie w instalatorze VS Express wybierz `` Modyfikuj '' -> wybierz Narzędzia do publikowania, i koniec. Gdy instalacja zakończy zmiany, będziesz mógł utworzyć instalator.


Dzięki. Wyrywałem sobie mózg, próbując publikować.
Brack

1

Należy przejść do Panelu sterowania -> Programy i funkcje, znaleźć Microsoft Visual Studio 2015 i wybrać „Zmień”. Rozpocznie się instalacja programu Visual Studio 2015. Wybierz „Modyfikuj”.

Na liście składników programu Visual Studio otwórz listę elementów podrzędnych i wybierz także „ClickOnce Publication Tools” i „Windows 10 SDK”.


0

Zrobiłem modyfikację w Visual Studio z Panelu sterowania, programów i funkcji. Zestaw SDK nie był początkowo widoczny, więc zainstalowałem Common Tools, które zawierały pakiet SDK Update 3.


Czy napotkałeś problem opisany w pytaniu i czy to, co opisałeś, rozwiązało to? Proszę wyjaśnij to w swojej odpowiedzi. Z poważaniem
YakovL

0

Jest dostępnych w wielu, wielu miejscach, w zależności od tego, co jest zainstalowane: na moim komputerze każdy z wyjątkiem wersji v6.0A SDK obsługuje opcję / fd.

wprowadź opis obrazu tutaj


0

SignTool jest dostępny jako część Windows SDK (który jest dostarczany z Visual Studio Community 2015 ). Pamiętaj, aby wybrać „ ClickOnce Publishing Tools ” z listy funkcji podczas instalacji programu Visual Studio 2015, aby pobrać SignTool.

Narzędzia do publikowania ClickOnce

Po zainstalowaniu programu Visual Studio możesz uruchomić signtoolpolecenie z wiersza polecenia programu Visual Studio .

Domyślnie (w systemie Windows 10) narzędzie SignTool zostanie zainstalowane w:

  • C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe

0

aby zainstalować tylko narzędzia do podpisywania z winsdksetup.exe (dostępne pod tym samym adresem URL, co wspomniane powyżej Windows SDK ISO) jest to opcja, bezpośrednio z pliku Dockerfile, w którym pracuję: RUN powershell Start-Process winsdksetup.exe -ArgumentList '/ features OptionId.SigningTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait

więc jeśli jesteś w systemie Windows, to będzie to: winsdksetup.exe / features OptionId.SigningTools

winsdksetup / h daje opcje, więc nie będę ich tutaj streszczać. Dołączam fragment dockerfile, ponieważ od tego zacząłem swój dzień w poszukiwaniu rozwiązania.


0

Najlepsze rozwiązanie na koniec 2020 roku:

Wystarczy pobrać Windows 10 SDK od firmy Microsoft tutaj:
https://go.microsoft.com/fwlink/?LinkID=698771

W konfiguracji wybierz tylko aplikację certyfikacji aplikacji systemu Windows (to tylko 120 MB)

wprowadź opis obrazu tutaj

Możesz znaleźć signtool.exe tutaj:
% PROGRAMFILES (X86)% \ Windows Kits \ 10 \ bin \ x64

Twoje zdrowie!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.