关于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的路径

相关推荐
艾莉丝努力练剑9 分钟前
【QT】环境搭建收尾:认识Qt Creator
运维·开发语言·c++·人工智能·qt·qt creator·qt5
Larry_Yanan12 分钟前
Qt安卓开发(二)摄像头打开
android·开发语言·数据库·c++·qt·ui
HalvmånEver17 分钟前
Linux:深入剖析 System V IPC下(进程间通信九)
linux·运维·服务器·c++·system v·管道pipe
m0_7482500319 分钟前
C++ 修饰符类型
开发语言·c++
李日灐24 分钟前
C++STL:仿函数、模板(进阶) 详解!!:“伪装术”和模板特化、偏特化的深度玩法指南
开发语言·c++·后端·stl
qq_4335545433 分钟前
C++ 图论算法:二分图最大匹配
c++·算法·图论
DYS_房东的猫39 分钟前
《 C++ 零基础入门教程》第5章:智能指针与 RAII —— 让内存管理自动化
开发语言·c++·自动化
%xiao Q42 分钟前
信息学奥赛一本通(部分题解)
c语言·c++·算法
w-w0w-w43 分钟前
C++ list简单模拟实现
数据结构·c++
枫叶丹41 小时前
【Qt开发】Qt系统(六)-> Qt 线程安全
c语言·开发语言·数据库·c++·qt·安全