VB调用C写的DLL

yuanxilin yuanxilin 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
有一个C写的DLL
int RunSeries(unsigned char* lpszScrColorImg, int height,int width,int mode, LEUCCYTO1 LeucChar[]);
LEUCCYTO1 是一个结构体。
typedef struct {
double NucRough;
double cytcolor;
double diffr;
double CytoRoundness;
double CellSize;
double NucRoundness;
double NucRoundnessD;
double NucRoundnessM;
double NucSizeRate;
double discrimNuc;
double discrimCyto;
int x;
int y;
int NucCount;
int NucTotalPixel;
int MaxNuc;
int NucDiff;
int CellTotalPixel;
int size;
int meanr;
int maxr;
int minr;
int seedl;
int cellclass;
unsigned char rgb[3];
BOOL aciDoubt;
int bw_1;
}LEUCCYTO1;
在C中调用语句

unsigned char buff[1024 * 768 * 3];
cell_num = RunSeries((unsigned char*)buff, height,width,0,LeucChar1);

现在用VB 调用
Public Type LEUCCYTO1
NucRough As Double
cytcolor As Double
diffr As Double
CytoRoundness As Double
CellSize As Double
NucRoundness As Double
NucRoundnessD As Double
NucRoundnessM As Double
NucSizeRate As Double
discrimNuc As Double
discrimCyto As Double
x As Long
y As Long
NucCount As Long
NucTotalPixel As Long
MaxNuc As Long
NucDiff As Long
CellTotalPixel As Long
size As Long
meanr As Long
maxr As Long
minr As Long
seedl As Long
cellclass As Long
rgb(1 To 3) As Byte
aciDoubt As Long
bw_1 As Long
End Type

Declare Function RunSeries Lib "C:\sbtx\HemanalyDll4.dll" (ByRef lpszScrColorImg As String, ByRef height As Long, ByRef width As Long, ByRef mode As Long, ByRef LeucChar() As LEUCCYTO1) As Long

调用语句
Dim KK As String
KK = String(2359297, Chr(0))
I = RunSeries(KK, 768, 1024, 0, LeucChar1)

一直运行不了,报“VB 遇到问题需要关闭”,请高手帮忙看下是那里出了问题。
...全文
评论 28
收藏 已收藏
分享
返回顶部
yuanxilin
API 1,488 成员 23,270 内容