运行vb工程时提示文件未找到Vbcall.dll

运行vb工程时提示文件未找到Vbcall.dll,第1张

解决这个问题,必须按照VB搜索和加载动态链接的规则放置动态链接文件。规则如下:

1)如果在VB中声明Dll函数时,Lib所指动态链接库文件不带路径而只有文件名,如以下语句所示:

Public Declare Function MyFunc Lib "Mydll.dll" (ByVal x As Long) As Long

则动态链接库文件 Mydll.dll 必须放置在:

VB程序运行的当前文件夹中

或者,放置在%WinDir\System32%文件夹中(通常为 C:\Windows\System32)

2)如果在VB中声明Dll函数时,Lib所指动态链接库文件带路径名,如以下语句所示

Public Declare Function MyFunc Lib "C:\Mydll.dll" (ByVal x As Long) As Long

则动态链接库文件 Mydll.dll 必须放置在所指定的文件中,即 C:\中

并不是说把DLL复制到程序文件夹就行的。DLL是函数库文件,其中包含的函数理论上是可以供其他任何软件调用的,而不是专供某个软件使用的(当然如果不公开其调用方法,它就自然变成某个软件专用的库函数了)。因此,一般情况下是把DLL文件放到一个公共文件夹中的(比如Windows的System32文件夹),其次,需要注册才行,实际上就是把库函数的入口存放到系统注册表中,这样其他软件才能找到函数入口并进行调用。注册方法是用regsvr32.exe,比如在开始菜单的运行中输入:

regsvr32 c:\windows\system32\xxxx.dll

我也不太懂。给你个建议你试一下:

将 fwlib32.dll 文件放在Windows可以搜索到的地方。

..Windows\sys32 目录之下

你的可执行文件(*.exe)的同一目录下,一般都放在同一目录下。

还有,直接在IDE下按运行键运行,会提示找不到dll文件。

在IDE下运行前,需要编译生成exe文件。

至于函数调用出错,使用 on error 拦截一下,分析研究,找出原因解决。

不知对你有没有帮助,见笑。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7994015.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存