【小麓讲堂】LabVIEW调用C++dll制作二次开发包
发布时间:2024-12-24 09:41:01 阅读次数:199

 

调用C++dll

 

LabVIEW支持调用C++dll,用C++编写的软件需要提供LabVIEW二次开发服务的时候可以考虑使用LabVIEW对C++dll中的函数进行封装,提供vi文件给客户做二次开发。 这样不需使用LabVIEW重新开发功能,也能满足LabVIEW二次开发的需求。 只需要简单学习LabVIEW的使用就可以完成。

首先,在程序面板中打开,函数>互联接口>库与可执行程序>调用库函数节点 ,添加到程序框图面板。 选择调用的动态库dll文件,设置函数参数。 完成后就可以在vi中使用节点了。

 

LabVIEW 兼容处理

 

LabVIEW 32/64bit 兼容处理

调用C++dll中的函数封装vi文件时需要考虑不同系统的兼容问题。 可以使用条件禁用结构来自动切换不同系统中调用的C++dll文件。

封装时需要注意的是:

a. 条件禁用结构中的dll路径问题

不同条件下调用的dll如果不同,文件名称也不能相同,否则会导致修改默认条件调用的dll,64bit条件下dll调用路径也会被同步修改。

b. dll依赖

调用的dll所依赖的dll文件也要同时拷贝到同路径下,否则会导致函数调用失败。

 

LabVIEW 早期版本兼容处理

高版本LabVIEW的项目和vi文件不能在低版本中打开使用,在如下菜单中选择保存为早期版本,保存后的项目可以在更早版本的LabVIEW中打开。

注意事项:

a. 设置依赖dll的时候设置的路径都是绝对路径,dll的依赖项也会自动添加到项目中。 但是项目路径移动之后再打开会提示文件已被移除,相对应的vi自然也不能正常运行。 在创建项目时,可以将依赖的dll文件手动添加到项目中,添加dll依赖,移动后打开路径会自动刷新。

b. 有dll依赖时保存为前期版本,会自动添加依赖项。 但是项目移动到其它电脑上后路径不会自动更新,导致找不到dll文件。 可通过下载一个早期版本的LabVIEW重新编辑项目后保存解决。

 

编辑vi

 

编辑vi图标

LabVIEW支持编辑vi图标,可以将vi中函数的信息写在图标中,方便编程时查看。 对话框中包含“模板”、“图标文本”、“符号”及“图层”几个部分,可以根据需求进行图标编辑。

 

编辑vi连接线

封装vi时,功能实现之后需要将输入连接线、输出连接线和控件关联起来,这样才能在外部调用vi,有点类似函数的入参和出参。

 

编辑vi选板图标

编辑选板,可让选板中的vi列表更整洁易用。 选板编辑完成后,需要在instr.lib目录下找到自己的项目,将mnu文件拷贝出来放在项目目录下方便拷贝使用。

 

注意事项

a.在LabVIEW中调用dll时,需要注意数据类型匹配、内存管理、线程安全以及调试和错误处理等问题。 通过正确配置调用库函数节点,合理处理指针和数组,确保内存安全和线程安全,可以成功实现dll函数的调用和功能集成。

b.在编辑vi期间要避免以下失误: 要求输入的函数端子未连接; 由于数据类型不匹配或存在散落、未连接的线段,使框图包含断线等。

 

×
联系客服