• / 2
  • 下载费用:10 金币  

如何从LabVIEW中调用动态链接库DLL.doc

关 键 词:
如何从LabVIEW中调用动态链接库DLL.doc
资源描述:
问题:如何从 LabVIEW 中调用动态链接库 DLL解答:要从 LabVIEW 中调用动态链接库(DLL) ,你需要首先确定是哪种类型的 DLL。 基本上有两种类型的 DLL 需要考虑:C/C++ DLL 和 Microsoft .NET assembly. C/C++ DLL 用 C, C++, 或其他编程语言生成(除了 .NET 语言) 比如 Java, Fortran, 或 Visual Basic 6.0. .NET DLL 也被称为 “.NET assembly“ 或者就是“assembly“. 这个术语的区别在于 .NET DLL 与其他 DLL 的工作方式不同. .NET DLL 使用 Common Language Runtime (CLR) 和 .NET Framework “处理“ DLL 中的函数.如果 DLL 是 C/C++ DLL:找到头文件(*.h) 或者函数原型声明.确定你需要调用的 function(s) . 注意函数的参数是否包含了原始数据类型参数比如 int, char, double, 等等或者是否包含了复杂数据类型比如 clusters.如果函数没有包含复杂数据类型并且你有头文件(*.h), LabVIEW 中一个很好的工具可以帮你简单地导入 DLL (并且会帮助你创建 DLL 的整个库). 你可以在 Tools?Import?Shared Library (.dll). 中找到该工具 ; 按照向导进行下去.如何函数不含有复杂数据类型但是没有头文件(*.h), 首先确定你使用的是 C/C++ DLL 因为大部分的编程环境将对这种 DLL生成头文件. 如果你确实在处理 C/C++ DLL, 找到该函数的相关文档,因为你需要确定那些在 DLL 中被调用的函数的参数 . 一旦参数被确定,使用 Call Library Function Node LabVIEW 中的函数手动调用该函数。如果你需要调用的函数含有复杂的数据类型,你需要手动使用 LabVIEW 中的 Call Library Function Node 功能直接调用, 在配置对话框中添加原型. 注意如果你的复杂数据类型是结构体而不是原始数据类型 (int, double, char), 从基于 C 的编程语言中创建 wrapper DLL. 因为 C/C++ 结构并不总是与 LabVIEW 的数据类型相对应的, wrapper DLL 能够近似的解析复杂结构的内容并且把它们翻译成原始类型. 比如,如果在 C 中的一个结构体包含 char * (字符串或者字符数组), 可以创建一个 wrapper function,LabVIEW 将直接用 char * type 调用它, 把它放在结构体中然后按照顺序调用 DLL. 注意如果你有 DLL 源代码,可以直接修改 DLL 使得它能够接收一个 char * 而不是该结构体.如果 DLL 是 .NET assembly:为了在 LabVIEW 中使用.NET assembly , 简单地使用.NET 面板 (Connectivity?.NET) 找出所有可用的函数.首先使用结构节点来例示.NET assembly 中的一个类.通过简单地连接结构节点的类引用到属性节点或者调用节点,使用属性节点和调用节点来获取该类的属性和方法
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:如何从LabVIEW中调用动态链接库DLL.doc
链接地址:https://www.weizhuannet.com/p-9474196.html
微传网是一个办公文档、学习资料下载的在线文档分享平台!

微传网博客

网站资源均来自网络,如有侵权,请联系客服删除!

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开