我们使用signtool.exe对一组托管程序集进行签名(在命令提示符下,我们在一个简单的.bat文件for循环中运行signtool.exe,从pfx文件应用证书)
- 当在域管理员帐户下运行时,运行时间不到 1 分钟。
- 在本地用户帐户下运行时,需要 37 分钟!
两种情况下的设置和条件(除了使用的登录帐户之外)相同。
不用说,我们的构建服务器正在使用“错误”的帐户运行!
有人能想到任何可能对signtool.exe的速度产生如此显着影响的用户帐户设置吗?它需要与任何外部服务交互吗?
最佳答案
灵机一动,我解决了这个问题。如果其他人遇到此问题,那是因为我们的代理服务器。
管理员帐户有排除项,因此本地地址不会通过代理服务器解析,但构建帐户没有排除项,因此signtool不必要地通过我们的代理来回(数千英里之外,因此非常慢)。
我不知道为什么在使用禁用时间戳的本地 pfx 文件签署本地文件时,signtool 需要 ping 互联网,但添加本地代理排除修复了该问题。
关于.net - Signtool.exe在不同用户帐户下运行缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3313126/