各位大虾帮忙啊,dll 调用约定错误!!!!

小弟万元户 2010-11-21 02:03:18

EXPORTS
add
long add(long var1,long var2)
{
return var1+var2;
}



Private Declare Function add Lib "..\JAPI.dll" (ByVal var1 As Long, ByVal var2 As Long) As Long

Private Sub Command1_Click()
Text3.Text = add(CLng(Text1.Text), CLng(Text2.Text))
End Sub



运行到add函数时,dll 调用约定错误!!!!
...全文
43 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxq19851204 2010-11-21
  • 打赏
  • 举报
回复
1,使用_stdcall协定(vb 只支持这个协定”)
2,调用无返回值的函数是用Sub,不要用Funcition(dll中的函数是void类型的)
3, 如果有参数的话,最好声明时使用Byval传递(采用按值传递)
lxq19851204 2010-11-21
  • 打赏
  • 举报
回复
估计是声明错了,试一下SUB
Private Declare sub add Lib "..\JAPI.dll" (ByVal var1 As Long, ByVal var2 As Long) As Long

lyserver 2010-11-21
  • 打赏
  • 举报
回复
DLL声明错误,如果DLL不在系统文件夹下,则指定全路径。

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧