标题:动态库除了应用程序目录还可以放哪?
只看楼主
yiyue123
Rank: 2
等 级:论坛游民
威 望:1
帖 子:78
专家分:78
注 册:2018-6-18
结帖率:100%
已结贴  问题点数:20 回复次数:7 
动态库除了应用程序目录还可以放哪?
如题
除了使用 .lib 来链接外,当然也可以使用 LoadLibrary 在程序运行时动态载入库。
不使用 LoadLibrary,在不将库放在应用程序目录和系统目录的情况下,怎么找到并载入这个库呢?
搜索更多相关主题的帖子: 载入 系统 动态库 应用程序 目录 
2020-04-12 16:10
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
要动态载入,又不使用 LoadLibrary 是什么意思?
如动态载入DLL,肯定要知道放在哪里,不在系统默认路径,也要明确一个相对路径,如在当前进程目录下的文件夹。
2020-04-12 16:55
yiyue123
Rank: 2
等 级:论坛游民
威 望:1
帖 子:78
专家分:78
注 册:2018-6-18
得分:0 
回复 2楼 吹水佬
确实,我的表述有点问题,不是太准确
我的意思是,比如有一个动态库叫 add.dll,它的导入库是 add.lib。
我在链接的时候只用到导入库,没有使用 LoadLibrary,那么 add.dll 必须放在系统路径或 exe 文件目录下才能被发现吗?
2020-04-12 17:04
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:10 
add.lib是静态载入,编译连接时就放到EXE,无需用add.dll
2020-04-12 17:34
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
那么是你的add.lib在LoadLibrary
所以要么是你在那里边特意指定了路径(别问我,我并不知道具体怎么做),
要么就必须像你说的那样把dll放到指定位置。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-04-12 18:52
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
嗯,不建议,但是你还是可以自己修改环境变量。

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-04-12 18:56
yiyue123
Rank: 2
等 级:论坛游民
威 望:1
帖 子:78
专家分:78
注 册:2018-6-18
得分:0 
额,多谢各位
2020-04-12 19:32
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
可以放在一切能找到的路径下,比如 系统 路径、比如 path 指定的路径

此外,还可以用 manifestdependency
2020-04-13 08:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-501005-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013932 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved