强制.NET互操作使用本地COM DLL

前端之家收集整理的这篇文章主要介绍了强制.NET互操作使用本地COM DLL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以强制互操作程序集引用其关联的COM DLL的本地副本?

这是场景:

我有一个引用互操作程序集(Interop.OTAClient.dll)的.NET应用程序,它是COM DLL的互操作程序(OTAClient.dll,它是HP Quality Center的自动化API).我对COM不是很了解,但据我所知,interop程序集通过注册表中的GUID引用查找COM类,而不是指向特定文件.

我遇到的问题是,注册表项指向的OTAClient.dll副本会被不同版本覆盖,具体取决于我刚刚在浏览器中登录的QC版本,并且这些DLL的不同版本与之不兼容彼此. .NET应用程序只会连接到特定版本的QC,因此我不能以这种方式改变COM DLL.

任何建议将不胜感激,因为这种行为真的很烦人.我已经看到有关COM互操作问题的其他问题,但它们似乎都是强制使用本地版本的互操作DLL而不是GAC中的一个,而不是涉及实际COM DLL的这种特定情况.

原文链接:https://www.f2er.com/windows/364667.html

猜你在找的Windows相关文章