我们最近尝试对.NET二进制文件进行数字签名.我们有一个
Windows服务,通常在10秒内启动.然而,在我们开始对其进行数字签名之后,时间增加到大约20-30秒.
谷歌搜索告诉我这个:
http://support.microsoft.com/kb/936707基本上说我必须将generatePublisherEvidence设置为false.
但MSDN上的description of generatePublisherEvidence指出这不适用于.NET 4.尽管我尝试了这个设置,但确实有效.我仔细检查了我的二进制文件是否针对.NET 4.
有人可以解释一下这种行为吗?
最佳答案 我按照
http://support.microsoft.com/kb/936707中提到的步骤进行了操作,基本上我必须在应用程序的App.Config中将generatePublisherEvidence设置为false.
编辑:根据ssdi的回答,延迟的根本原因是:
This problem occurs because the application must download the
Certificate Revocation List (CRL) for authentication. However, a lack
of network connectivity causes the download to fail by timing out. For
example, a firewall may potentially block the download. When Windows
first starts, the network connection is not yet initialized.
有关详细信息,另请参阅文章:http://support.microsoft.com/kb/941990.