dll返回值调用问题
有一段vc程序做成了DLL.我想把里面处理完毕的结果返回到vb里面,(处理完的结果存储在结构体里)。我返回结构体指针,可是在vb里调不出来。总显示约定错误,是怎么回事?我只是临时用一下这些语言编程。所以很多地方都不会。希望大家能够帮忙。谢谢!下面是代码:
vc程序:
#include <windows.h>
#include<iostream.h>
struct mfs
{
long int fset;
int mcw[5];
}
extern "C"_declspec(dllexport) struct mfs *_stdcall GetDataPoint(); int struct mfs *_stdcall GetDataPoint()
{
struct mfs mf;
struct mfs *m;
mf.mcw[0]=1;
mf.mcw[1]=2;
mf.mcw[2]=3;
mf.mcw[3]=4;
mf.mcw[4]=5;
mf.fset =10;
m=&mf;
return (m );
}
vb里面:
Option Explicit
Private Declare Function GetDataPoint Lib "MyDLL.dll" () As mfs
Private Sub Command1_Click()
Dim mf As mfs
mf= GetDataPoint()
Text3.Text = mf.fset
End Sub
其中的mfs定义在模块中:
Type mfs
mcw(5) As Long
fset As Long
End Type