参考Microsoft Build 2018会议的视频: https://medius.studios.ms/Embed/Video/BRK2425?sid=BRK2425
我们看到新的IDL版本3中没有GUID。 这是否可以使用相同组件的2个不同版本,让我们说在同一台计算机上的两个不同文件夹中,让它们同时工作? 请考虑以下目录结构:
两个exe都会在它们旁边使用DLL,还是有像COM对象这样的注册机制?
我知道COM组件是不可能的,因为如果它们具有相同的Type ID(guid),则只能为其注册一个DLL,并且最后注册的DLL会获胜。
所以我想我可以重新解释我的问题"如何解决依赖于c ++ - winrt组件的客户端应用程序的依赖关系?"如果它只是普通的旧COM对象,那么我理解它不可能有两个不同的版本,但如果它使用常规的LoadDLL()加载DLL并首先搜索当前文件夹,它是可能的。