大家好,我一直对一个问题很烦恼
我们在开发的一个软件,需要支持多个厂家的dll,主要是各种摄像头的SDK。
大部分的 dll 都依赖于不同版本的VC运行库,如 MSVCR90.dll、MSVCR80.dll、MSVCR120.dll
我想请教一下,目前我们的做法是直接把依赖的 MSVCR80.dll 等文件统统打包进去,或者调用安装 VC 运行库。
这样会不会有问题? 因为我记得 VC2005 的VC运行库就有好多版本,貌似不能兼容,那是不是全部都要打包进去。
不会有兼容问题的,可以共存,另外VC++有自己打包好的运行时库,直接运行就可以了。
这个问题不是绝对的,你打包应该是版本较高的包,它会向下兼容。但是,有时也会出现兼容问题。
这个东西很容易出现兼容问题的,需要小心处理DLL的路径
这跟你开发软件时使用的哪个运行时库有关,比如:你开发软件时用的是vs2005就必须用MSVCR80.dll打包的dll
开发的软件在哪个环境下编译的要与你调用的dll打包的环境处于同一环境下