首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

DLL加载的有关问题

2012-02-14 
DLL加载的问题程序a.exe文件在目录A动态链接库b.dll在目录A\Bb.dll又依赖于c.dll(方式为静态链接)我想在a

DLL加载的问题
程序a.exe文件在目录A
动态链接库b.dll在目录A\B
b.dll又依赖于c.dll(方式为静态链接)
我想在a中动态加载b.dll(LoadLibray( ".\\B\\b.dll ")),我把c.dll放在目录A\B但是加载不成功,后来把c.dll放在目录A下就可以了.
我现在希望做的是能够把c.dll放在目录A\B下而可以动态加载b.dll,
我现在想到几个方法(还没尝试):
1、更改系统环境变量,把目录A\B加进去;
2、把c.dll放到C:\windows\system32目录下去。
但是这两者都不是我想要的,请问还有什么可以实现的方法?
谢谢!

[解决办法]
你这是显示调用 。。
改成隐式的试试??
[解决办法]
用绝对路径.

[解决办法]
".\\B\\b.dll "的意思是说在当前目录下的有个目录B. B下能找到B.dll.
如果你是在开发环境下,启动A.exe. 很不辛, 这个当前目录并不是A.exe所在的目录.
而是project所在的目录.
[解决办法]
用 GetModuleFileName 取 EXE 的路径, 再计算出 DLL 的路径.
[解决办法]
你可以把 DLL 拷贝到 C:\Winnt\System32\ 下,这样总能找到.

热点排行