我用vb调用vc做的dll,全都使用long类型可以传递数组。但是改成single或者double。运行时就出现“Vb遇到问题需要关闭...”,改变数据类型时,我两边都做了同意改变。我时新手,哪位高手能帮帮我。我的vb: Private Declare Function add Lib "a" (ByVal ax As Long) As Long
Private Sub Command1_Click()Static ax(0 To 1) As Long
Dim z As Longax(0) = Text1.Text
ax(1) = Text2.Text
z = add(VarPtr(ax(0)))
Text3.Text = z
Print z
End Sub
vc:#include "stdafx.h"
#include < windows.h >
WINAPI long add(long x[])
{
long z;
z=x[1]+x[0];
return (z);
}
Private Sub Command1_Click()Static ax(0 To 1) As Long
Dim z As Longax(0) = Text1.Text
ax(1) = Text2.Text
z = add(VarPtr(ax(0)))
Text3.Text = z
Print z
End Sub
vc:#include "stdafx.h"
#include < windows.h >
WINAPI long add(long x[])
{
long z;
z=x[1]+x[0];
return (z);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货