佚名通过本文主要向大家介绍了
请问我的编写DLL需要其他一些DLL文件,怎么指定这些所需DLL的文件路径?等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 请问我的编写DLL需要其他一些DLL文件,怎么指定这些所需DLL的文件路径?
描述:
解决方案1:
描述:
好像默认情况向只能放在system32下面?
能不能放在和DLL一个路径下?
解决方案1:
静态加载的话,放在同一个目录下一定可以。
如果动态加载的话,在LoadLibrary中给一个绝对路径,看看还有问题不?
以前也遇到了这个问题。
如果应用程序搜索DLL,路径顺序好像是这样:
(1)应用程序所在目录;
(2)Windows系统目录;
(3)Windows目录;
(4)Path环境变量所定义的目录。
可DLL中使用DLL好像不是这样,两个DLL在同一个目录也找不见。后来想了想因为DLL是加载到应用的进程空间中的,他搜索DLL
的顺序应该是应该程序搜索的顺序,即把两个DLL都放入应用所在的目录应该可以找见(没有试验,不知行不?)
最后,为了保险,我解决的办法是安装应用程序的时候在注册表中记录了应用的安装目录,两个DLL都放入了应用程序所在子目录中,加载DLL时从注册表中读取了路径信息。
好像默认情况向只能放在system32下面?
===========================
如果你不加路径的话,它先从当前目录找,然后是window\system32,再是其它,你放在当前目录下一定行的。