写的传结构给用

服装加工设备2021年09月06日

由于某些情况下,我们需要用CB或是VC写一个DLL,而调用它的确实VB。

这里特别强调一下使用标准数据类型的问题,就是说用C++写的东西,导出的函数最好使用标准的int,char,long,double...标准类型以及他们的指针。

很多人都强调过这个问题。但是我最近遇到一个需要VB传结构给CB做的DLL,然后数据返回到结构的情况。

typedef struct Xtest

{

char a[100];

char b[100];

}*pX;

__declspec(dllexport) void __stdcalltest (*px,char *x,char *y);

void __stdcalltest (*px,char *x,char *y)

{

if(strlen(x)100) *(x+99)=\"\";

if(strlen(y)100)*(y+99)=\"\";

strcpy(px-a,x);

strcpy(px-b,y);

数百名中国公民被抓扣。至20日凌晨2点 return;

}

在VB里你要写一个同样的结构

public type Xtest

a as string*100

b as string*100

end type

public declare funciton test lib\"你的DLL名字\" (byref px as Xtest,byval x,byval y)

这样才可以成功,如果使用了不定长的字符串,那么很可能你的系统要崩溃,我在我这里是这样。如果有问题,请大家指正。

另外,VB声明DLL里的函数,需要DLL的名字放在 LIB后面,但是这个名字在运行时,你必须要写全路径或是放在SYSTEM32目录,即使放在VB程序所在的目录,也需要全路径。但是编译过的VB程序,可以识别放在同目录下在声明里没有写全路径的DLL。

西宁白癜风在哪里治疗
武汉哪里能治疗白癜风
单片复方降压药可以长效降压吗
相关阅读
清代和田籽玉“心即是文殊”柱状勒

清代和田籽玉“心即是达摩”柱状什 尺寸:6.05×1.3厘米 , 全长36厘米,总重...

2023-10-18
【东方焦点】北京中医药大学东方医院与海外中医中心共同承办国际代表大会“中医儿科”线上分论坛取得圆满成

北京里药学药大学圣城疗养院与海外里药学区域内联合负责负责管理国际则会...

2023-10-01
困扰基础教育的十大疑问

1.可能会应试的教育,使中幼儿教育生课业负担持续性沉重,严重影响自尊。...

2023-09-30
张卫健男朋友为他流产不育,相爱21年仍甜蜜如初,46岁打扮时尚时尚

点击顶部关注小丸子,获取格外多奇怪有料的时髦资讯和明星穿戴搭。 无论...

2023-09-29
唐山打架事件,见义勇为为啥就这么难

唐山打人大事件过了几天了,越加深挖就越加明白,其实挨打的女同学做什么...

2023-09-27
工信部:正在研究储备工业稳增长后半段政策措施

官媒北京4月19日电 (女记者申佳平)“我国经济发展依然向好的基本面没有改变...

2023-09-26
友情链接