我有一个第三方DLL,我需要在我的应用程序中使用。我的项目是用SNK签名的,因此我不能在没有签名的情况下使用这些未签名的DLL。
我尝试使用ildasm.exe作为解释here,但我在尝试签署DLL时收到错误消息,因为DLL包含非托管代码。我得到的错误消息是“生成的PE文件不可用”(DLL使用P / Invoke调用)。
我能在这做什么想法?
答案 0 :(得分:7)
最简单的方法是使用密钥重建DLL。你还没有告诉我们关于第三方DLL的任何信息......如果它是一个商业图书馆,我希望所涉及的公司很乐意给你一个签名的二进制文件。如果它是一个开源库,你可以自己做。
如果您无法获得“正常”签名二进制文件,或许您可以提供有关该情况的更多详细信息?
答案 1 :(得分:2)
如果您无法获得第三方程序集的签名版本并且需要使用它,那么可以在运行时动态加载dll。