VB调用DLL提示找不到

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sendinn/article/details/81262566

       声明库函数时,要使用绝对路径 ---- app.path无效因为要求lib后面跟的是一个常量字符串,程序在编译期间就去获取他(除非放到ysy32或者加到系统变量path中)

也有人这么说:

代码中不指定路径,dll放在exe目录下。
调用API时注意:当前目录必须是 App.Path,否则就定位不到 dll 了。
如果 CurDir 不是 App.Path,那么你必须先用 ChDrive、ChDir 把当前目录改过来。

问题的关键在于:虽然VB提示找不到这个DLL,但其实在VB6中,如果目标DLL所依存DLL不存在,而导致这个目标DLL初始化失败,VB6是会报这个目标DLL为53错误的,就很气。可以用VS里面自带的DEPENDS.EXE去打开这个DL,然后看看依赖项里是否有问号,如果有,那应该就是这个原因了。

话是这么说,但我有好多API-MS开头的DLL并没有也不会影响,但是下面的一些MSVCR,OPENCV什么的都是全部有的。

所以提示找不到DLL应该是缺少VC的环境(所有装过VS的环境都是可以的)

展开阅读全文

没有更多推荐了,返回首页