Why are signed assemblies slow to load?

后端 未结 7 2093
不知归路
不知归路 2020-12-02 19:35

I encountered a strange problem this week that I can\'t explain: I switched my application to use the signed version of some third party assemblies (Xceed Grid and some of t

7条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-02 19:52

    Just incase anyone else comes across this post, I've traced the issue a little further, because I was just trying to figure it out and found this page.

    It appears that the CRL is checked each time you are running your process if the existing CRL that is on your machine has timed out, and not yet updated with a new one. You can test this by hitting the CRL at http://crl.microsoft.com/pki/crl/products/CodeSignPCA.crl and check the expiry date. Now configure a Proxy within IE that doesn't work. Set your machine date past the Expiry Date and retest your application.

    If your NIC is disabled, the CRL is not checked.

    If your NIC has no gateway, the CRL is not checked.

    If you have a Proxy enabled and a gateway then the CRL is checked and if there is a problem with the Proxy, then you will experience this timeout.

    If you connect to the internet successfully then the CRL updates and you will be fine for the time being.

    My application was using some older Xceed Components in .NET 2.0 and has been working forever so it took a while to figure out what was going on.

提交回复
热议问题