关于c++不同模块引用同一依赖项的不同版本

如模块A是自己写的程序,模块B是第三方的Dll,而A和B均引用了第三方库模块C(另一个DLL),但版本不一样且无法兼容。此时将哪一个版本的模块C引入至运行路径,均会导致程序无法正常运行。

DLL地狱问题,C++ two libraries depend on same lib but different versions?

最简单的解决办法是让模块A和模块B均基于同一版本的模块C,但实践中有难度

一种可能的办法(未验证):设法延迟模块B的加载时机,在其加载前将模块A的运行路径从系统路径中剔除,并添加模块B的路径

相关推荐
oioihoii31 分钟前
现代C++:一场静默的革命,告别“C with Classes”
c语言·jvm·c++
普通网友1 小时前
C++中的组合模式
开发语言·c++·算法
江公望1 小时前
Qt QByteArray类型,10分钟讲清楚
开发语言·c++·qt
2501_941111461 小时前
C++中的组合模式变体
开发语言·c++·算法
普通网友2 小时前
单元测试在C++项目中的实践
开发语言·c++·算法
沐怡旸3 小时前
【穿越Effective C++】条款22:将成员变量声明为private——封装的边界与设计的自由
c++
普通网友5 小时前
高性能TCP服务器设计
开发语言·c++·算法
普通网友5 小时前
C++与硬件交互编程
开发语言·c++·算法
Elias不吃糖6 小时前
整合了c++里面常用的STL及其常用API
开发语言·c++·学习·stl
FLPGYH7 小时前
BMC 深度解析:服务器带外管理的核心技术架构与实践
linux·服务器·c++·驱动开发