用VC编了一个简单的dll,在VB中调用,出错。但是在VC中调用正常。
- VB.NET code
Private Declare Function add Lib "my.dll" (ByVal a As Long, ByVal b As Long) As LongPrivate Sub Form_Load()Dim c As Longc = add(3, 4)End Sub
“找不到dll入口点 add in my.dll”?
在dll中的代码:
- C/C++ code
__declspec (dllexport) int __stdcall add(int a,int b){ return a+b;}这是为什么呢?
[解决办法]
路径问题
[解决办法]
你把my.dll放到C:\Windows\System32目录下
[解决办法]
Private Declare Function add Lib "d:\youdllpath\my.dll" (ByVal a As Long, ByVal b As Long) As Long
[解决办法]
编译后就应该没问题了
[解决办法]
找不到入口点,应该是找到文件了,但找不到调用的函数。
1 检查你的 my.dll 文件是否正确。可以用 Dependencies Walker 工具查看是否有 add 函数接口。
2 检查在 VB 中声明的函数名,与 DLL 中的函数名是否一致,包括大小写。