收藏 分销(赏)

LabVIEW调用操作系统功能PPT学习课件.ppt

上传人:天**** 文档编号:10306472 上传时间:2025-05-22 格式:PPT 页数:69 大小:3.90MB
下载 相关 举报
LabVIEW调用操作系统功能PPT学习课件.ppt_第1页
第1页 / 共69页
LabVIEW调用操作系统功能PPT学习课件.ppt_第2页
第2页 / 共69页
点击查看更多>>
资源描述
Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,*,Http:/,Http:/,Thank you!,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,*,Click to edit Master title style,*,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,*,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,*,Click to edit Master title style,*,*,Click to edit Master title style,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,第,7,章,LabVIEW,调用操作系统功能,Intelligent Electronics Institute,Huazhong University of Science&Technology,引言,任何一个应用程序开发平台都有其自身的优势与不足,,LabVIEW,也不例外。作为一个高级编程人员,在开发一个大的复杂应用程序时必须能够综合应用不同软件开发平台的功能,才能使项目更加完善。一个好的软件开发环境,也必然具备与其他应用程序的交互功能及必要的开发工具。,本章将要讲到的读,/,写电子表格文件、读,/,写,XML,文件、读,/,写配置文件、读,/,写系统注册表、调用,ActiveX,控件、调用系统链接库及调用命令行程序等都是,LabVIEW,与其他应用程序的交互方式。,2,本章内容,7.1,读,/,写电子表格文件,7.2,读,/,写,XML,文件,7.3,读,/,写配置文件,7.4,读,/,写系统注册表,7.5,输入设备控制,7.6,调用动态链接库,(DLL),7.7 ActiveX,7.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,文件,Touring Germanys Great Cathedrals,Tony Walters,Douglas Drive Publishing,$29.99,9,7.2,读,/,写,XML,文件,XML,文件写操作,“平化至,XML,”(,Flatten To XML,)函数,XML,模版,10,7.2,读,/,写,XML,文件,XML,文件读操作,“从,XML,还原”(,Unflatten From XML,)函数,XML,格式转换成簇,11,7.2,读,/,写,XML,文件,从,XML,文件中读取数据,12,7.3,读,/,写配置文件,配置文件,VI,可读取和创建标准的,Windows,配置文件,其标准扩展名为,.ini,,但只要内容格式正确,配置文件,VI,也可操作以任何扩展名命名的文件。,在,.ini,文件中,,LabVIEW,会将路径数据保存为独立于平台的格式。,例如绝对路径,/c/temp/data.dat,解析为如下路径:,Windows c:tempdata.dat,;,Mac OS c:temp:data.dat,;,Linux/c/temp/data.dat,。,13,7.3,读,/,写配置文件,配置文件写操作,Windows,配置文件标准格式,生成名为“,Configuration.ini,”的配置文件,14,7.3,读,/,写配置文件,测试配置程序例程,程序框图,15,7.3,读,/,写配置文件,测试配置程序例程,程序界面和生成文件,16,7.3,读,/,写配置文件,配置文件读操作,“读取键值”(,Read Key.vi,)函数,读取值数据类型设置,17,7.3,读,/,写配置文件,测试配置程序例程,初始化测试配置程序,18,7.3,读,/,写配置文件,测试配置程序例程,读取配置信息,19,7.4,读,/,写系统注册表,所谓“注册表”,实际上是一个庞大的数据库,它包含了应用程序和系统软硬件的全部配置信息,这里所指的注册表仅针对于,Windows,操作系统。,注册表系统组成和注册表结构,本节首先以,LabVIEW,自带的三个例子,说明在,LabVIEW,中读,/,写注册表的一般方法,然后讲解自动配置,ODBC,(,Open Database Connectivity,,开放数据互连)数据源的应用实例。,20,7.4,读,/,写系统注册表,注册表写操作,创建注册表项,21,7.4,读,/,写系统注册表,程序运行结果,Windows Registry Editor Version 5.00,HKEY_LOCAL_MACHINESOFTWAREMyKey,My String=LabVIEW,My Binary=hex:03,02,01,00,My DWORD=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,输入设备控制,实时获取鼠标键盘信息例程,首先通过“查询输入设备”,(Query Input Devices.vi),查询按键和鼠标的信息,分别初始化键盘和鼠标,在,While,循环中获取键盘按键信息和鼠标位置及点击信息,关闭输入设备,28,7.5,输入设备控制,程序框图,29,7.5,输入设备控制,程序界面,30,7.6,调用动态链接库,(DLL),动态链接库,动态链接库(,Dynamic Link Library,,,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,文件必须存放在下列任意一个子目录中:,Windowssystem,目录中;,应用程序所在的子目录;,配置文件中定义的自动搜索的子目录。,35,7.6,调用动态链接库,(DLL),DLL,与,API,应用程序编程接口(,Application Programming Interface,,,API,)是能用来操作组件、应用程序或者操作系统的一组函数,一般情况下,,API,指的是,Windows API,,包括构成,Windows,操作系统的各种,DLL,。每个,Windows,应用程序都直接或间接地与,Windows API,互动,36,7.6,调用动态链接库,(DLL),Windows,中的,API,函数,Windows,的,API,函数位于,Windows,系统目录下的多个,DLL,文件中,其中最基本的三个组成模块如下:,Kernel32.dll,:,Windows,系统核心,32,位,API,基础库,如内存和文件管理;,Gdi32.dll,:图形设备接口库,如显示和打印等;,User32.dll,:用户接口库,如键盘、鼠标、声音、系统时间等,37,7.6,调用动态链接库,(DLL),调用,DLL,LabVIEW,中动态链接库的调用是通过调用库函数(,Call Library Function,,,CLF,)节点实现,节点位置“函数,互连接口,库与可执行程序”选板,38,7.6,调用动态链接库,(DLL),配置,CLF,节点,右键单击节点并选择“配置,”选项,或者直接双击节点,39,7.6,调用动态链接库,(DLL),配置,DLL,的“函数”、“参数”、“回调”和“错误检查”具体步骤,DLL,“函数”页数据类型配置注意,40,7.6,调用动态链接库,(DLL),调用,Windows API,API,函数位于,DLL,文件中,所以在,LabVIEW,中调用,API,函数和调用,DLL,的方法基本一样,在函数配置时,需要把调用规范设置为,stdcall,(,WINAPI,),41,7.6,调用动态链接库,(DLL),查询当前可用的物理内存和虚拟内存信息实例,利用系统目录下的,User32.DLL,库中的,API,函数,GlobalMemoryStatus(),来获得,函数声明如下:,VOID GlobalMemoryStatus(LPMEMORYSTATUS lpBuffer);,typedef struct _MEMORYSTATUS/mst,DWORD dwLength;/sizeof(MEMORYSTATUS),DWORD dwMemoryLoad;/percent of memory in use,DWORD dwTotalPhys;/bytes of physical memory,DWORD dwAvailPhys;/free physical memory bytes,DWORD dwTotalPageFile;/bytes of paging file,DWORD dwAvailPageFile;/free bytes of paging file,DWORD dwTotalVirtual;/user bytes of address space,DWORD dwAvailVirtual;/free user bytes,MEMORYSTATUS,*LPMEMORYSTATUS;,42,7.6,调用动态链接库,(DLL),程序框图和运行结果,43,7.7 ActiveX,ActiveX,是,Microsoft,推出的基于组件对象模型(,Component Object Model,,,COM,)的一个技术集的统称。它可实现代码重用,并且与具体的编程语言无关。,ActiveX,的主要组成部分包括,ActiveX,自动化(,Automation,)、,ActiveX,控件(,ActiveX Control,)、,ActiveX,文档(,ActiveX Documents,)和,ActiveX,脚本(,ActiveX Scripting,),44,7.7 ActiveX,ActiveX,自动化(,Automation,),ActiveX,自动化是,ActiveX,最重要的功能之一,它可以使一个应用程序通过,ActiveX,操纵另一个应用程序的对象;并可以使一个应用程序提供一些对象及对象的方法和属性来允许另外一个应用程序调用。,LabVIEW,既可以作,ActiveX,客户端,又可以作,ActiveX,服务器。作为客户端时,,LabVIEW,可以访问现有的,ActiveX,对象来增强,LabVIEW,的功能,如访问,Excel,、,Web,、,Access,等;作为服务器时,它允许其他程序访问它提供的,ActiveX,自动化服务,如调用,VI,、控制,LabVIEW,等,45,7.7 ActiveX,ActiveX,相关函数,位于“函数,互连接口,ActiveX,”选板,46,7.7 ActiveX,ActiveX,主要函数功能,打开自动化:打开,ActiveX,对象,获得对象的,Reference,;,关闭引用:关闭,Reference,;,转换为变体:把,LabVIEW,数据转换成变体型;,变体至数据转换:把变体型数据转换成,LabVIEW,数据;,属性节点:属性节点,用于获取或设置,ActiveX,对象的属性;,调用节点:调用节点,用于调用,ActiveX,对象的方法;,事件回调注册:处理,ActiveX,对象提供的事件;,取消注册事件:关闭事件。,静态,VI,引用:保持一个,VI,的静态引用。,47,7.7 ActiveX,ActiveX,容器,利用,LabVIEW,的,ActiveX,容器,可以调用第三方提供的,ActiveX,控件,并访问其属性和方法,从而使程序功能更加丰富,界面更加友好,节省开发时间,LabVIEW,的,ActiveX,容器位于“控件,新式,容器”选板,48,7.7 ActiveX,ActiveX,容器,配置,49,7.7 ActiveX,ActiveX,事件(,Events,),类似于,LabVIEW,中的事件结构,当,ActiveX,对象的事件发生时,就转去执行相应的程序。在,LabVIEW,中,将,ActiveX,对象或,.NET,对象的事件称为“回调事件”(,Callback,),事件发生时转去执行的,VI,称为“回调,VI,”(,Callback VI,),ActiveX,事件,主要会用到两个函数:“注册回调事件”,(Register Event Callback),和“取消注册事件”,(Unregister For Events),50,7.7 ActiveX,应用实例,向,Microsoft Office Word,写数据,51,7.7 ActiveX,运行结果,通过添加新的属性节点或方法节点,还可以实现更多的功能,如保存、插入图片、打印等操作,52,7.7 ActiveX,对,Excel,进行有效性操作,53,7.7 ActiveX,运行结果,通过,Microsoft Excel 12.0 Object Library,提供的,Excel ActiveX,自动化对象,实现对,Excel,的操作,操作结果如下:,54,7.7 ActiveX,ActiveX,容器与,ActiveX,事件,在前面板容器中插入,Microsoft Office Spreadsheet 11.0,控件,55,7.7 ActiveX,注册,ActiveX,事件,创建回调,VI,56,7.7 ActiveX,主程序框图和,Callback VI,程序框图,57,7.7 ActiveX,程序运行结果,58,7.8,执行系统命令,在,LabVIEW,中还可以通过调用“执行系统命令”(,System Exec.vi,)函数直接运行系统命令,“执行系统命令”位于“函数,互连接口,库与可执行程序”选板,59,7.8,执行系统命令,执行,Ping 192.168.1.115,操作实例,程序框图,60,7.8,执行系统命令,运行结果,61,7.8,执行系统命令,打开文件实例,调用一个文件的一般方法,只需要在“,file name and path,”路径控件中设定文件的路径即可。此种方法能打开,*.txt,、,*.exe,文件等,62,7.8,执行系统命令,把后缀名为,*.CCMS,的文件以记事本的方式打开,63,7.8,执行系统命令,有趣的自杀式应用程序,64,7.8,执行系统命令,之所以称为“自杀”,是因为程序将会删除程序本身。程序首先在临时目录下生成一个批处理文件(,*.bat),,然后通过,System Exec.vi,调用该批处理文件对自己进行自杀式删除。,BAT,文件的内容为:,:begin,del E:610,工程,610 Program Run_Suicide.vi,if exist E:610,工程,610 Program Run_Suicide.vi goto begin,del,0,65,本章总结,本章介绍了一些,LabVIEW,与其他应用程序进行交互的基本方式。任何一个应用程序开发平台都有其自身的优势与不足,,LabVIEW,也不例外。作为一个高级编程人员,为使项目更加完善,应该熟练地综合运用其他软件的功能,以弥补,LabVIEW,开发平台的不足。,66,习题,7-1,简述一下电子表格文件、,XML,文件及配置文件的应用场合,以及各自的用法。,7-2,编写程序,记录最近一次运行的配置参数,并作为下次运行的初始默认值。尝试使用几种方法实现,如读,/,写配置文件。,7-3,试编写,LabVIEW,程序,查看操作系统安装了哪些字体。(提示:操作系统安装的字体可通过“控制面板,字体”或“系统根目录,WINDOWSFonts,”查看。)尝试用几种方法实现,如读注册表信息。,7-4,调用,Windows API,,获取系统信息,如,CPU,的,ID,和数量、硬盘的,ID,等信息。,67,习题,7-5,学习本章,7.7.4,节中用,ActiveX,操作,Word,和,Excel,的实例,并编写程序把新建的文档存盘。,7-6,试着通过,Access,提供的,ActiveX,自动化对象访问,Access,数据库。习题中,Exercise7ActiveX_Access.vi,是一个获得数据库中所有表名的例子。同时,在,LabVIEW,中访问数据库还有另外几种方法,如利用,Microsoft,的,DAO,(,Data Access Objects,)、,Microsoft ADO,(,ActiveX Data Objects,),以及,NI,公司提供的免费的、多数据库、跨平台的数据库工具包,LabSQL,等。,7-7,通过,ActiveX,对象在,LabVIEW,中播放,Flash,、影音文件。,68,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服