VC++项目生成的exe和dll,一般都会同一个在debug或release目录下,这样可能会造成不同版本第三方库的dll互相冲突的问题,需要将不同版本的dll放到不同的运行目录,让exe程序在运行时自动在指定的目录查找并加载dll。
1、将直接依赖的ConvLibc.dll及它间接依赖的dll放入到./debug/depends目录下。
2、在工程属性页->链接器->输入->延迟加载的DLL项中,将直接引用的DLL名称填入。
3、在程序代码中设置dll运行路径。注:如果在调试模式出现引用错误,在可将相对路径改为绝对路径。
#include
#include
int main()
{
const char* dllPath = ".\\depends";
SetDllDirectory(dllPath);
......
}