无管理员权限且空间有限,能否单独获取signtool.exe?
解决仅获取signtool.exe实现自动签名的方案
从已安装SDK的设备复制文件
找一台已安装Windows SDK的机器,signtool.exe的常规路径(根据SDK版本和系统位数调整):- 64位系统:
C:\Program Files (x86)\Windows Kits\10\bin\<SDK版本号>\x64\signtool.exe - 32位系统:
C:\Program Files\Windows Kits\10\bin\<SDK版本号>\x86\signtool.exe
同时要复制对应的依赖文件,比如api-ms-win-core-libraryloader-l1-1-0.dll、api-ms-win-core-synch-l1-2-0.dll等,可以用Dependency Walker工具查看具体依赖项,把这些文件放在同一目录下就能直接运行signtool。
- 64位系统:
用Chocolatey安装最小化组件
如果能使用便携版Chocolatey包管理器(无需管理员权限),可以只安装包含signtool的Windows SDK组件:choco install windows-sdk-10.0 --no-progress --package-parameters "--include Optional;Windows Software Development Kit\Tools\x64"安装完成后,signtool会在Chocolatey的安装目录里,占用空间远小于完整SDK。
提取VS Build Tools中的签名工具
下载Visual Studio Build Tools离线安装包,自定义安装时只勾选“Windows SDK中的签名工具”组件,安装路径可以指定到非系统盘,部分版本支持无需管理员权限安装,完成后在对应路径找到signtool.exe即可。
注意:单独复制signtool.exe大概率因缺少依赖无法运行,必须同步复制所需的系统依赖库;无论用哪种方式获取文件,都要确保来源安全,避免引入恶意程序。
内容的提问来源于stack exchange,提问作者Hof
相关产品推荐
相关产品推荐

