0

我正在使用 signtool 对我的文件进行签名。

如何递归搜索文件夹和子文件夹中的所有 ocx、dll 和 exe,然后使用命令提示符对它们进行签名?我只想签署我开发的那些,而不是第三方的。

4

2 回答 2

2

尝试@echo off FOR /f "tokens=*" %%G IN ('dir /s *.dll *.ocx *.exe') DO ( echo %%G set A= "%%G" signtool sign /f "C:\Certificates\FakeCertificate.pfx" %A% )

于 2013-11-09T02:40:52.833 回答
2

这里的问题是如何区分您的二进制文件和第三方二进制文件。您可以创建一个白名单,或者如果您一直使用您的公司名称标记二进制文件版本信息,您可以采用以下方法:

Get-ChildItem *.* -r -inc *.dll,*.ocx,*.exe | 
    Where {($_ | Get-FileVersionInfo).CompanyName -match 'your-company-name'} | 
    Foreach {signtool sign <options> $_.Fullname}

注意:此方法使用来自 PowerShell 社区扩展的命令 (Get-FileVersionInfo),可在此处下载。

于 2013-10-30T00:47:48.963 回答