设置DLL搜索路径

liaomingxue none 服务器端工程师  2008-01-10 09:20:16
程序中需要调用很多不同路径下的dll,如果在PATH中设置这些路径,程序当然没有问题。

我现在想在vc2005中调试该程序,希望能不需要设置PATH环境变量就能正确调试,不知道在开发环境中能否配置好搜索路径【经过测试,在“工具-选项-可执行文件”中设置dll的路径,那么调试的时候还是会提示找不到dll】。
...全文
1672 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ecjtuync 2008-10-08
[Quote=引用 2 楼 akirya 的回复:]
VS2005中工程编译选项 debugging environment,自己设置path

[/Quote]

请问在VS2005中 怎么在 debugging environment设置path , 怎么把这个path变量加上去????
回复
crashbluebird 2008-01-12
1. copy to system32
2. copy to current dir
回复
liaomingxue 2008-01-11
(1) 写入注册表有两个问题:一是程序更加复杂;二是不好区分相同dll的不同版本
(2) 直接将所需DLL都拷贝到system32里应该可以吧
问题同上

关键的问题是:我要用到的dll涉及到几十种不同功能,因此一般地要求放在不同路径之下;二是这些dll在我的计算机中有很多不同的版本,有的用来做调试,有的用来做发布,还有的保存着做测试等等。

因此,希望能在开发环境中设置多个路径,用来搜索dll,即类似LIB的搜索路径设置功能。
回复
写入注册表
回复
vecri 2008-01-10
Visual C++
Windows 用来定位 DLL 的搜索路径

通过隐式和显式链接,Windows 首先搜索“已知 DLL”,如 Kernel32.dll 和 User32.dll。Windows 然后按下列顺序搜索 DLL:
1. 当前进程的可执行模块所在的目录。
2. 当前目录。
3. Windows 系统目录。GetSystemDirectory 函数检索此目录的路径。
4. Windows 目录。GetWindowsDirectory 函数检索此目录的路径。
5. PATH 环境变量中列出的目录。
回复
vecri 2008-01-10
直接将所需DLL都拷贝到system32里应该可以吧。
回复
VS2005中工程编译选项 debugging environment,自己设置path
回复
applethink 2008-01-10
我觉得自己专门写个类来维护这些路径比较好。
回复
发动态
发帖子
VC.NET
创建于2007-09-28

7536

社区成员

.NET技术 VC.NET
申请成为版主
社区公告
暂无公告