Làm thế nào để cài đặt SignTool.exe trong Visual Studio 2015 cho Windown 10? Tôi đã cố gắng xây dựng dự án của mình nhưng chương trình đã gặp lỗi:
Lỗi Đã xảy ra lỗi khi ký: Không tìm thấy SignTool.exe.
Làm thế nào để cài đặt SignTool.exe trong Visual Studio 2015 cho Windown 10? Tôi đã cố gắng xây dựng dự án của mình nhưng chương trình đã gặp lỗi:
Lỗi Đã xảy ra lỗi khi ký: Không tìm thấy SignTool.exe.
Error An error occurred while signing: Failed to sign bin\Debug\app.publish\LotusGenCode.exe. SignTool Error: Invalid option: /fd LotusGenCode
Câu trả lời:
Bạn cần cài đặt Windows 10 SDK.
Quá trình thiết lập Visual Studio 2015 sẽ bắt đầu. Chọn "Sửa đổi".
Trong danh sách thành phần Visual Studio, tìm "Universal Windows App Development Tools", mở danh sách các mục phụ và chọn "Windows 10 SDK (10.0.10240)".
Windows 10 SDK trong VS 2015 Cập nhật 1 Thiết lập
Như josant đã viết - khi quá trình cài đặt kết thúc, bạn sẽ tìm thấy SignTool.exe trong các thư mục:
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
Nếu bạn chỉ muốn SignTool và thực sự muốn giảm thiểu cài đặt, đây là một cách mà tôi chỉ cần thiết kế ngược theo cách của mình để:
.iso
tệp từ https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk (liên kết tải xuống hiện tại là http://go.microsoft.com/fwlink/p/?LinkID=2022797 ) Quá trình .exe
tải xuống sẽ không hoạt động , vì đây là một trình cài đặt trực tuyến kéo xuống các phần phụ thuộc của nó trong thời gian chạy..iso
bằng một công cụ như 7-zip .Installers/Windows SDK Signing Tools-x86_en-us.msi
tệp - nó chỉ lớn 388 KiB. Để tham khảo, nó lấy các tệp của nó từ các .cab
tệp sau , vì vậy, những tệp này cũng cần thiết để cài đặt độc lập:
4c3ef4b2b1dc72149f979f4243d2accf.cab
(339 KiB)685f3d4691f444bc382762d603a99afc.cab
(1002 KiB)e5c4b31ff9997ac5603f4f28cd7df602.cab
(389 KiB)e98fa5eb5fee6ce17a7a69d585870b7c.cab
(1,2 MiB)Chúng tôi bắt đầu - bây giờ bạn sẽ có signtool.exe
tệp và đồng hành trong C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64
(thay thế x64
bằng x86
, arm
hoặc arm64
nếu bạn cần nó cho kiến trúc CPU khác.)
Cũng có thể cam kết signtool.exe
và các tệp khác từ thư mục này vào kho lưu trữ kiểm soát phiên bản của bạn nếu muốn sử dụng nó trong các tình huống CI. Tôi đã thử nó và nó có vẻ hoạt động tốt.
( Tất cả các tệp có thể không cần thiết vì cũng có một số .exe
công cụ khác trong thư mục này có thể chịu trách nhiệm cho những phần phụ thuộc này, nhưng tôi không chắc cái nào có thể bị xóa để làm cho bộ tệp nhỏ hơn nữa. Ai đó có thể tự do điều tra xa hơn trong lĩnh vực này. :) Tôi đã cố gắng chỉ sao chép signtool.*
và điều đó không hoạt động, vì vậy ít nhất một số tệp khác là cần thiết.)
install
không phù hợp với tôi. Tôi đã gặp lỗiThe system cannot find the file specified.
.iso
dễ dàng hơn nhưng đối với những người khác, bạn có thể muốn lấy tệp nhị phân cùng với tất cả các phụ thuộc (ví dụ: đăng ký signtool.exe
và bạn bè vào kho lưu trữ git của bạn và đăng ký các bản dựng trong AppVeyor, Jenkins, v.v.)
Theo nhận xét trong câu hỏi ... Trên Windows 10, Signtool.exe và các công cụ SDK khác đã được chuyển vào "% programfiles (x86)% \ Windows Kits \" .
Đường dẫn điển hình đến signtool trên Windows 10.
Các công cụ cho SDK 8.0 và 8.1 cũng nằm trong thư mục "Bộ dụng cụ Windows".
Vị trí:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe
Vào năm 2019, đây là một liên kết khá gần đây của Microsoft về cách tải công cụ này:
Công cụ SignTool là một công cụ dòng lệnh ký số vào tệp, xác minh chữ ký trong tệp hoặc tệp dấu thời gian. Để biết thông tin về lý do tại sao việc ký tệp lại quan trọng, hãy xem Giới thiệu về Ký mã. Công cụ được cài đặt trong thư mục \ Bin của đường dẫn cài đặt Microsoft Windows Software Development Kit (SDK).
SignTool có sẵn như một phần của Windows SDK, bạn có thể tải xuống từ https://go.microsoft.com/fwlink/p/?linkid=84091 .
Tôi chỉ cần signtool, vì vậy tôi đã chọn cái tối thiểu mà tôi nghĩ ra và signtool.exe hiện đã có trong C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe
Liên kết bài viết của Microsoft: https://docs.microsoft.com/en-us/windows/win32/seccrypto/signtool
28 tháng 4 năm 2020
Tôi tìm thấy nó ở đây:
C:\Program Files (x86)\Windows Kits\10\App Certification Kit
Nếu bạn đang sử dụng VS Express 2015, chỉ cần đi tới bảng điều khiển của bạn -> chương trình và tính năng -> chọn so với 2015 -> nhấp vào thay đổi, sau đó trong trình cài đặt VS Express chọn 'Sửa đổi' -> chọn Công cụ xuất bản, và kết thúc. Sau khi thiết lập hoàn tất các thay đổi, bạn sẽ có thể tạo trình cài đặt của mình.
Bạn nên vào Control Panel -> Programs and Features, tìm Microsoft Visual Studio 2015 và chọn "Change". Quá trình thiết lập Visual Studio 2015 sẽ bắt đầu. Chọn "Sửa đổi".
Trong danh sách thành phần Visual Studio, hãy mở danh sách các mục con và chọn "ClickOnce Publication Tools" và "Windows 10 SDK".
Tôi đã thực hiện một sửa đổi với Visual Studio từ Bảng điều khiển, Chương trình và Tính năng. Lúc đầu, SDK không rõ ràng vì vậy tôi đã cài đặt Công cụ chung, trong đó có Bản cập nhật SDK 3.
SignTool có sẵn như một phần của Windows SDK (đi kèm với Visual Studio Community 2015 ). Đảm bảo chọn " ClickOnce Publishing Tools " từ danh sách tính năng trong khi cài đặt Visual Studio 2015 để lấy SignTool.
Sau khi Visual Studio được cài đặt, bạn có thể chạy signtool
lệnh từ Visual Studio Command Prompt .
Theo mặc định (trên Windows 10), SignTool sẽ được cài đặt trong:
C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe
để chỉ cài đặt các công cụ ký từ wondksetup.exe (có sẵn tại cùng một url như windows sdk iso đã đề cập ở trên), đây là một tùy chọn, ngay từ Dockerfile mà tôi đang làm việc trong: RUN powershell Start-Process wondksetup.exe -ArgumentList '/ features OptionId.SignsTools', '/ q', '/ ceip off', '/ norestart', -NoNewWindow -Wait
vì vậy nếu bạn đang ở trong windows thì đó sẽ là: wondksetup.exe / features OptionId.SignsTools
wondksetup / h cung cấp cho bạn các tùy chọn, vì vậy tôi sẽ không tóm tắt chúng ở đây. Tôi bao gồm đoạn mã dockerfile, vì đó là những gì tôi bắt đầu ngày của mình để tìm giải pháp.