+ -
当前位置:首页 → 问答吧 → 修改调用的DLL名时遇到的问题

修改调用的DLL名时遇到的问题

时间:2011-12-26

来源:互联网

环境:VS2005

问题描述:A工程原来设置为Debug模式下生成AD.dll,Release模式下生成A.dll。B工程通过条件编译的手段设置在Debug时调用AD.dll,Release时调用A.dll。现在想不再采用名字来区别Debug和Release,而是将dll分别生成在两个目录里来使用。A工程在Debug和Release时均生成A.dll(分别存放在不同文件夹)。B工程取消了条件编译,并在源代码和工程设置里对依赖项进行了相应的调整,改成Debug时调用Debug文件夹下的A.dll,Release时调用Release文件夹下的A.dll。现在Release正常,Debug时可以正常生成解决方案,但运行调试时仍然提示找不到AD.dll。经检查代码和设置中均已不包含与AD.dll相关的信息。不知道是怎么回事?

作者: bluezh   发布时间: 2011-12-26

怎么加载dll的?
这种情况适合用LoadLibrary显式加载dll

作者: ouyh12345   发布时间: 2011-12-26

如果隐式加载,建议输出的导入库分别为AD.lib和A.lib

作者: ouyh12345   发布时间: 2011-12-26

修改 AD.lib 为 A.lib

作者: Saleayas   发布时间: 2011-12-26

是隐式加载,一开始确实是输出的导入库分别为AD.lib和A.lib,但现在也已经改成了向不同的文件夹输出A.lib,也已经在B的工程设置里对Debug和Release设置了不同的文件夹。

作者: bluezh   发布时间: 2011-12-26

引用 4 楼 bluezh 的回复:

是隐式加载,一开始确实是输出的导入库分别为AD.lib和A.lib,但现在也已经改成了向不同的文件夹输出A.lib,也已经在B的工程设置里对Debug和Release设置了不同的文件夹。


那加载lib时,知道路径没有?

作者: ouyh12345   发布时间: 2011-12-26

知道,在工程设置里已经指定了目录的完整路径。

作者: bluezh   发布时间: 2011-12-26