如何使用call library function节点中匹配至类型
主要软件:
主要软件版本: 6.1
主要软件修正版本: N/A
次要软件: N/A
问题: 如何使用call library function节点中匹配至类型?
解答: 匹配至类型可以让用户传递一个复杂的数据类型例如簇(也就是C语言中的结构体)到DLL。你可以值用匹配至类型做函数声明。但是返回值不可以用匹配至类型,只有字符串和数值数据类型可以设置为返回值类型。
如何用匹配至类型:
1,在程序框图中放置一个Call Library Function节点
2,右键点击CLN选择设置
3,选择适合的DLL以及你想用的函数,如果你只是想查看C的数据类型,这一步可以忽略
4,点击添加参数
5,在类型中选择匹配至类型
6,在程序框图中,你可以将簇链接到输入端。
当传递复杂的数据类型到C,LabVIEW中有一个内置的功能,可自动生成函数原型和结构定义为您服务。当你连接你的集群成为一个调用库函数节点,右键单击调用库函数节点,并选择创建.c文件。保存该文件。现在,您可以在您的C/C++ IDE或用记事本查看此.c文件。下面的例子生成以下的C代码:
/* Call Library Source File */
#include "extcode.h"
/* Typedefs */
typedef struct {
int32 dimSize;
int32 elt[1];
} TD2;
typedef TD2 **TD2Hdl;
typedef struct {
int32 Numeric;
TD2Hdl Array;
int32 Numeric2;
} TD1;
void funcName(TD1 *arg1);
void funcName(TD1 *arg1)
{
/* Insert Code Here */
}
此代码创建,你必须使用一个C / C ++结构接口您的LabVIEW集群适当的数据类型。当构建你的DLL,你必须包括extcode.h,fundtypes.h和platdefines.h在C/ C ++项目。这些头文件位于C:\ Program Files文件\国家仪器\的LabVIEW6.1\ cintools目录。您可以访问使用以下语法您的LabVIEW集群中的每个元素:
arg1->Numeric = 5
另外,labview传递句柄到dll(句柄是指针的指针)
更多的资料可以查看LabVIEW 7.1之前,参考Using External Code in LabVIEW。LabVIEW 8.0之后,参考Configuring the Call Library Function Node topic
相关链接: Product Manual: Using External Code in LabVIEW
LabVIEW Help: Configuring the Call Library Function Node
附件: - adapttotype.GIF
报告日期: 01/24/2003
最近更新: 11/29/2015
文档编号: 2TNBMIHM
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.