LabVIEW调用操作系统功能PPT学习课件_第1页
LabVIEW调用操作系统功能PPT学习课件_第2页
LabVIEW调用操作系统功能PPT学习课件_第3页
LabVIEW调用操作系统功能PPT学习课件_第4页
LabVIEW调用操作系统功能PPT学习课件_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章LabVIEW调用操作系统功能 IntelligentElectronicsInstituteHuazhongUniversityofScience Technology 引言 任何一个应用程序开发平台都有其自身的优势与不足 LabVIEW也不例外 作为一个高级编程人员 在开发一个大的复杂应用程序时必须能够综合应用不同软件开发平台的功能 才能使项目更加完善 一个好的软件开发环境 也必然具备与其他应用程序的交互功能及必要的开发工具 本章将要讲到的读 写电子表格文件 读 写XML文件 读 写配置文件 读 写系统注册表 调用ActiveX控件 调用系统链接库及调用命令行程序等都是LabVIEW与其他应用程序的交互方式 2 本章内容 7 1读 写电子表格文件7 2读 写XML文件7 3读 写配置文件7 4读 写系统注册表7 5输入设备控制7 6调用动态链接库 DLL 7 7ActiveX7 8执行系统命令 3 7 1读 写电子表格文件 LabVIEW文件操作基本步骤 4 打开 读写 操作 关闭 7 1读 写电子表格文件 电子表格写操作文件格式的要求保存电子表格格式文本文件 5 7 1读 写电子表格文件 保存电子表格文件 6 7 1读 写电子表格文件 电子表格文本文件和电子表格文件生产结果 7 7 1读 写电子表格文件 电子表格读操作数据读取类型和格式 8 7 2读 写XML文件 可扩展置标语言 XML 可扩展置标语言 XML 是一种用标记描述数据的格式化标准 与HTML标记不同 XML标记不是告诉浏览器如何按格式处理数据 而是使浏览器能识别数据 例如为每本书创建一个XML文件TouringGermany sGreatCathedralsTonyWaltersDouglasDrivePublishing 29 99 9 7 2读 写XML文件 XML文件写操作 平化至XML FlattenToXML 函数XML模版 10 7 2读 写XML文件 XML文件读操作 从XML还原 UnflattenFromXML 函数XML格式转换成簇 11 7 2读 写XML文件 从XML文件中读取数据 12 7 3读 写配置文件 配置文件VI可读取和创建标准的Windows配置文件 其标准扩展名为 ini 但只要内容格式正确 配置文件VI也可操作以任何扩展名命名的文件 在 ini文件中 LabVIEW会将路径数据保存为独立于平台的格式 例如绝对路径 c temp data dat解析为如下路径 Windowsc temp data dat MacOSc temp data dat Linux c temp data dat 13 7 3读 写配置文件 配置文件写操作Windows配置文件标准格式生成名为 Configuration ini 的配置文件 14 7 3读 写配置文件 测试配置程序例程程序框图 15 7 3读 写配置文件 测试配置程序例程程序界面和生成文件 16 7 3读 写配置文件 配置文件读操作 读取键值 ReadKey vi 函数读取值数据类型设置 17 7 3读 写配置文件 测试配置程序例程初始化测试配置程序 18 7 3读 写配置文件 测试配置程序例程读取配置信息 19 7 4读 写系统注册表 所谓 注册表 实际上是一个庞大的数据库 它包含了应用程序和系统软硬件的全部配置信息 这里所指的注册表仅针对于Windows操作系统 注册表系统组成和注册表结构本节首先以LabVIEW自带的三个例子 说明在LabVIEW中读 写注册表的一般方法 然后讲解自动配置ODBC OpenDatabaseConnectivity 开放数据互连 数据源的应用实例 20 7 4读 写系统注册表 注册表写操作创建注册表项 21 7 4读 写系统注册表 程序运行结果WindowsRegistryEditorVersion5 00 HKEY LOCAL MACHINE SOFTWARE MyKey MyString LabVIEW MyBinary hex 03 02 01 00 MyDWORD dword 00000100 22 7 4读 写系统注册表 注册表读操作 23 7 4读 写系统注册表 注册表删除操作 24 7 4读 写系统注册表 自动配置ODBC数据源ODBC是微软开发的服务结构中有关数据库的一个组成部分 它建立了一组规范 并提供了一组对数据库访问的标准API 在应用程序开发中用到数据库时 需要手动配置ODBC数据源 一旦相关的文件路径发生改变 则需要再次手动配置 这给最终用户带来了极大的不便 将与手动配置相似的注册表信息写到注册表中 实现ODBC数据源的自动配置 25 7 4读 写系统注册表 LabVIEW中实现为应用程序自动地配置ODBC数据源 26 7 5输入设备控制 用来获取连接到计算机上的操纵杆 键盘和鼠标的信息输入设备控制VI位于 函数 互连接口 输入设备控制 子选板 27 7 5输入设备控制 实时获取鼠标键盘信息例程首先通过 查询输入设备 QueryInputDevices vi 查询按键和鼠标的信息分别初始化键盘和鼠标在While循环中获取键盘按键信息和鼠标位置及点击信息关闭输入设备 28 7 5输入设备控制 程序框图 29 7 5输入设备控制 程序界面 30 7 6调用动态链接库 DLL 动态链接库动态链接库 DynamicLinkLibrary DLL 是一个可以多方共享的程序模块 内部对共享的例程和资源进行了封装 动态链接库文件的扩展名一般为 dll 也可能是 drv sys或者 fon 31 7 6调用动态链接库 DLL DLL和可执行文件DLL和可执行文件 EXE 很相似 最大的区别在于DLL虽然包含了可执行代码却不能单独执行 必须由Windows应用程序直接或间接调用 32 7 6调用动态链接库 DLL 动态链接库特点通用性DLL的编写 生成与具体编译器无关 使用较少的资源当多个程序使用同一个函数库时 DLL可以减少在磁盘和物理内存中加载的代码的重复量 33 7 6调用动态链接库 DLL 共享代码 资源和数据DLL中封装了一些可以被共享的例程和资源 不仅包含可执行的代码 还有数据和各种资源 简化部署和安装当DLL中的函数需要更新或修复时 部署和安装DLL不要求重新建立程序与该DLL的链接 34 7 6调用动态链接库 DLL DLL使用注意为了使应用程序正常地使用动态链接库 DLL文件必须存放在下列任意一个子目录中 Windows system目录中 应用程序所在的子目录 配置文件中定义的自动搜索的子目录 35 7 6调用动态链接库 DLL DLL与API应用程序编程接口 ApplicationProgrammingInterface API 是能用来操作组件 应用程序或者操作系统的一组函数一般情况下 API指的是WindowsAPI 包括构成Windows操作系统的各种DLL 每个Windows应用程序都直接或间接地与WindowsAPI互动 36 7 6调用动态链接库 DLL Windows中的API函数Windows的API函数位于Windows系统目录下的多个DLL文件中 其中最基本的三个组成模块如下 Kernel32 dll Windows系统核心32位API基础库 如内存和文件管理 Gdi32 dll 图形设备接口库 如显示和打印等 User32 dll 用户接口库 如键盘 鼠标 声音 系统时间等 37 7 6调用动态链接库 DLL 调用DLLLabVIEW中动态链接库的调用是通过调用库函数 CallLibraryFunction CLF 节点实现节点位置 函数 互连接口 库与可执行程序 选板 38 7 6调用动态链接库 DLL 配置CLF节点右键单击节点并选择 配置 选项 或者直接双击节点 39 7 6调用动态链接库 DLL 配置DLL的 函数 参数 回调 和 错误检查 具体步骤DLL 函数 页数据类型配置注意 40 7 6调用动态链接库 DLL 调用WindowsAPIAPI函数位于DLL文件中 所以在LabVIEW中调用API函数和调用DLL的方法基本一样在函数配置时 需要把调用规范设置为stdcall WINAPI 41 7 6调用动态链接库 DLL 查询当前可用的物理内存和虚拟内存信息实例利用系统目录下的User32 DLL库中的API函数GlobalMemoryStatus 来获得 函数声明如下 VOIDGlobalMemoryStatus LPMEMORYSTATUSlpBuffer typedefstruct MEMORYSTATUS mstDWORDdwLength sizeof MEMORYSTATUS DWORDdwMemoryLoad percentofmemoryinuseDWORDdwTotalPhys bytesofphysicalmemoryDWORDdwAvailPhys freephysicalmemorybytesDWORDdwTotalPageFile bytesofpagingfileDWORDdwAvailPageFile freebytesofpagingfileDWORDdwTotalVirtual userbytesofaddressspaceDWORDdwAvailVirtual freeuserbytes MEMORYSTATUS LPMEMORYSTATUS 42 7 6调用动态链接库 DLL 程序框图和运行结果 43 7 7ActiveX ActiveX是Microsoft推出的基于组件对象模型 ComponentObjectModel COM 的一个技术集的统称 它可实现代码重用 并且与具体的编程语言无关 ActiveX的主要组成部分包括ActiveX自动化 Automation ActiveX控件 ActiveXControl ActiveX文档 ActiveXDocuments 和ActiveX脚本 ActiveXScripting 44 7 7ActiveX ActiveX自动化 Automation ActiveX自动化是ActiveX最重要的功能之一 它可以使一个应用程序通过ActiveX操纵另一个应用程序的对象 并可以使一个应用程序提供一些对象及对象的方法和属性来允许另外一个应用程序调用 LabVIEW既可以作ActiveX客户端 又可以作ActiveX服务器 作为客户端时 LabVIEW可以访问现有的ActiveX对象来增强LabVIEW的功能 如访问Excel Web Access等 作为服务器时 它允许其他程序访问它提供的ActiveX自动化服务 如调用VI 控制LabVIEW等 45 7 7ActiveX ActiveX相关函数位于 函数 互连接口 ActiveX 选板 46 7 7ActiveX ActiveX主要函数功能 打开自动化 打开ActiveX对象 获得对象的Reference 关闭引用 关闭Reference 转换为变体 把LabVIEW数据转换成变体型 变体至数据转换 把变体型数据转换成LabVIEW数据 属性节点 属性节点 用于获取或设置ActiveX对象的属性 调用节点 调用节点 用于调用ActiveX对象的方法 事件回调注册 处理ActiveX对象提供的事件 取消注册事件 关闭事件 静态VI引用 保持一个VI的静态引用 47 7 7ActiveX ActiveX容器利用LabVIEW的ActiveX容器 可以调用第三方提供的ActiveX控件 并访问其属性和方法 从而使程序功能更加丰富 界面更加友好 节省开发时间LabVIEW的ActiveX容器位于 控件 新式 容器 选板 48 7 7ActiveX ActiveX容器配置 49 7 7ActiveX ActiveX事件 Events 类似于LabVIEW中的事件结构 当ActiveX对象的事件发生时 就转去执行相应的程序 在LabVIEW中 将ActiveX对象或 NET对象的事件称为 回调事件 Callback 事件发生时转去执行的VI称为 回调VI CallbackVI ActiveX事件 主要会用到两个函数 注册回调事件 RegisterEventCallback 和 取消注册事件 UnregisterForEvents 50 7 7ActiveX 应用实例向MicrosoftOfficeWord写数据 51 7 7ActiveX 运行结果通过添加新的属性节点或方法节点 还可以实现更多的功能 如保存 插入图片 打印等操作 52 7 7ActiveX 对Excel进行有效性操作 53 7 7ActiveX 运行结果通过MicrosoftExcel12 0ObjectLibrary提供的ExcelActiveX自动化对象 实现对Excel的操作 操作结果如下 54 7 7ActiveX ActiveX容器与ActiveX事件在前面板容器中插入MicrosoftOfficeSpreadsheet11 0控件 55 7 7ActiveX 注册ActiveX事件创建回调VI 56 7 7ActiveX 主程序框图和CallbackVI程序框图 57 7 7ActiveX 程序运行结果 58 7 8执行系统命令 在LabVIEW中还可以通过调用 执行系统命令 SystemExec vi 函数直接运行系统命令 执行系统命令 位于 函数 互连接口 库与可执行程序 选板 59 7 8执行系统命令 执行Ping192 168 1 115操作实例程序框图 60 7 8执行系统命令 运行结果 61 7 8执行系统命令 打开文件实例调用一个文件的一般方法 只需要在 filenameandpath 路径控件中设定文件的路径即可 此种方法能打开 txt exe文件等 62 7 8执行系统命令 把后缀名为 CCMS的文件以记事本的方式打开 63 7 8执行系统命令 有趣的自杀式应用程序 64 7 8执行系统命令 之所以称为 自杀 是因为程序将会删除程序本身 程序首先在临时目录下生成一个批处理文件 bat 然后通过SystemExec vi调用该批处理文件对自己进行自杀式删除 BAT文件的内容为 begindel E 610工程 610Program Run Suicide vi ifexist E 610工程 610Program Run Suicide vi gotobegindel 0 65 本章总结 本章介绍

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论