.net – 访问新签名的第三方DLL会出错
我有一个使用第三方DLL的签名应用程序.这些DLL没有签名. – 到目前为止第一步没有问题:我刚刚签署了它们(使用ildasm.exe获取* .il,* .il中的publickeytoken,因为它们具有相互依赖关系,并使用ilasm.exe创建* .dll)
该项目现在编译良好,也启动. 但是在我的代码中,调用第三方DLL的类构造函数(或其他东西? – 这是我做的第一件事),我得到错误“强名称签名程序集必须在其中指定一个公钥InternalsVisibleTo声明“ 如果你有DLL的源代码似乎没有问题,并且可以通过设置调整AssemblyInfo.cs [assembly: InternalsVisibleTo("MyProject.Domain.Tests,PublicKey=..."] 但是:如上所述,我有一个第三方DLL我没有源.所以没办法像这样解决问题. 有什么建议让这个运行? 解决方法
我有完全相同的问题.
为什么会这样 >使用InternalsVisibleTo声明第三方程序集,使其成为其他程序集的“朋友”,例如InternalsVisibleTo( “OtherAssembly”) 怎么修 如果程序执行不需要“朋友”程序集(例如,它是未在生产中部署的测试程序集),请按照下列步骤操作: >反汇编有问题的程序集:ildasm.exe ThirdParty.dll /OUTPUT=ThirdParty.il 如果程序执行需要“朋友”程序集,则必须对所有这些朋友程序集进行签名.然后按照上面的类似步骤,除了不删除InternalsVisibleTo,您必须使用正确的公钥修改每个声明. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- window.location.replace和window.location.href的区别
- 错误:类未注册(HRESULT异常:0x80040154(REGDB_E_CLASSNOT
- 个人亲测,在win10系统下安装多实例mysql8.0详细教程
- Windows – 如何在命令行中禁用Hyper-V?
- 使用AD证书从Windows到Linux的SSH
- windows-server-2008 – 可以将必要的dll文件复制到服务器而
- winapi – 从内核模式关闭Windows?
- 清除Windows系统里未知的自启动程序
- .net – 为什么System.Environment.MachineName值大写?
- Windows 10 – WAMP橙色
- 无法加载文件或程序集“Microsoft.WindowsAzure.
- windows – 将程序安装到Program Files是最佳做法
- 如何在Windows上测量C中的CPU时间并包含system()
- 在.NET中,如何在NTFS中创建连接,而不是Symlink?
- active-directory – 可以将Windows 2008R2 RODC
- Windows RPC端口135,137,139(以及更高端口)的顺序
- windows – 使用git客户端和SVN存储库的最佳工具
- cnpm安装过程中提示optional install error: Pac
- windows – 在堆栈上分配更多页面大小的缓冲区会
- Anaconda安装新模块