labview导入dll类型匹配问题

2019-07-17 21:22发布

labview中写了一个子vi,如下: QQ截图20151129202953.png ,两个输入三个输出。导出dll的头文件为
void __stdcall Pic_Process(uintptr_t *PicIn, TD1 *ErrIn, uintptr_t *PicOut, float *AngleOut, TD1 *ErrOut);
之后想利用labview工具导入dll库,将其导入labview中调(不用CLF方法)。
图像输入、错误输入类型不能识别,在错误预处理定义中加入uintptr_t = void;TD1 = void;之后函数就被识别成了
void  Pic_Process(unsigned long PicIn, unsigned long ErrIn, unsigned long PicOut, float *AngleOut, unsigned long ErrOut); 如下图所示:
QQ截图20151129203739.png
再在用户库中选择导出的Pic_Process函数,不再是图片和错误类型,变成了unsigned long,是怎么回事?应该怎么解决呢?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
bamenwhj
1楼-- · 2019-07-18 00:56
 精彩回答 2  元偷偷看……
610700050
2楼-- · 2019-07-18 05:59
bamenwhj 发表于 2015-11-29 21:02
我想说,用LabVIEW去生成dll是NI的工程师都不会做的事情……

实现不了吗???
zhnuaa
3楼-- · 2019-07-18 07:08
除非输入输出数据类型是labview与c标准数据类型有对应的,复杂数据类型都会导致各种奇怪复杂的问题。。。
理论上能解决但是很麻烦
bamenwhj
4楼-- · 2019-07-18 07:39
610700050 发表于 2016-10-31 18:33
实现不了吗???

实现的了,但是对于LabVIEW的数据类型在其他平台上调用很容易出Bug。
LabVIEW自身的平台调用应该还好一些,但调dll的意义也不是很大。

一周热门 更多>