我有一个C# (.NET 4.0) WinForm应用程序,它不断地与基于Linux的应用程序通信,每秒从它接收一些数据。当我看到'clr.sll!StrongNameSignatureVerification‘正在消耗这个应用程序的大量CPU时,我一直在微调这个WinForm应用程序,以减少它的高CPU使用率。我用找出了这个问题。一些谷歌搜索告诉我,'clr.sll!StrongNameSignatureVerification‘正在启动,因为CLR试图验证这是否是一个强命名的程序集(我不希望CLR这么做)。
在对此进行了进一步研究之后,我尝试了Microsoft中的sn.exe来跳过此WinForm应用程序的签名验证。我说这不是一个强命名的程序集,这是一个错误。我并不感到惊讶,因为我没有对这个应用程序进行签名,或者不记得设置任何应该调用CLR来验证该应用程序签名的内容。
我在.net应用程序安全性方面的经验几乎为零,所以现在我正在寻求一些关于这个问题的帮助。任何指针都会有帮助。
提前谢谢。
发布于 2014-04-06 10:04:27
看看clr.sll!StrongNameSignatureVerification,之后的偏移量,如果它大于几千字节,这可能意味着在Process中没有加载符号,并且在clr.dll中的任何其他方法中都可能存在这个问题。
https://stackoverflow.com/questions/7303315
复制相似问题