从LabVIEW传递一个簇数组到DLL



主要软件:
主要软件版本: 1.0
主要软件修正版本: N/A
次要软件: N/A

问题: 是否可以从LabVIEW传递一个簇数组到DLL?

解答: 可以使用调用库函数节点来实现从LabVIEW传递一个簇数组到DLL。
  1. 在程序框图中放置一个调用库函数节点(位于互连接口 » 库与可执行程序面板)。
  2. 右键点击该节点,选择配置...
  3. 函数选项卡中选择了DLL和调用的函数以后,选择参数选项卡。
  4. 点击 + 按钮为本次调用创建一个新的参数。
  5. 命名这个参数,并在类型下拉菜单中选择匹配至类型
  6. 在数据格式下拉菜单中选择数组数据指针
使用这种方式调用DLL时还有一些额外的因素必须考虑。LabVIEW会把数组中的第一个簇元素的指针传递给指定的参数。 但LabVIEW不会传递任何关于数组长度的信息。因此,你可能想要创建另一个参数来传递数组大小。并且,簇元素的内存分布情况也可能跟你的预期不同。为了观察这部分的内存分配情况,你可以使用一个代码接口节点
  1. 在程序框图中放置一个代码接口节点(位于互连接口 » 库与可执行程序面板)。
  2. 连接簇做为该节点的输入。
  3. 右键点击该节点选择创建.c文件...
  4. 保存并打开这个C文件。注意LabVIEW在此输出的结构跟传递给调用库函数节点的结构是相同的。


相关链接: LabVIEW 8.6 Help:  Configuring the Call Library Function Node
KnowledgeBase 3HGBK7QG:  My Call Library Function Node Cannot Output Arrays, Waveforms, or Tables

附件:





报告日期: 11/17/2006
最近更新: 08/30/2009
文档编号: 43GBTHSN