《程序设计与实例分析》课件-第十一讲 - 硬件编程_第1页
《程序设计与实例分析》课件-第十一讲 - 硬件编程_第2页
《程序设计与实例分析》课件-第十一讲 - 硬件编程_第3页
《程序设计与实例分析》课件-第十一讲 - 硬件编程_第4页
《程序设计与实例分析》课件-第十一讲 - 硬件编程_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

C#的WMI编程1C#上位机程序设计2复习3Contents目录C#的WMI编程1C#上位机程序设计2复习3Contents目录11.1WMI程序设计对于信息工程的学生来说,工作中势必会遇到非常多的硬件板卡,针对板卡本身的程序设计通常不会使用C#,而C#主要用于设计上位机程序,将板卡当中的情况形象的展示在计算机当中。C#和硬件之间的这种通信可以通过标准的接口来完成(如GBIP、USB、RS232、LAN等),也可以通过板卡提供的标准的API来完成。11.1WMI程序设计WMI是WindowsManagementInstrumentation的简称,即:视窗管理规范。在Windows2000或以后的版本中均有安装,NT4.0则需要安装WMI的核心组件。通过WMI可以获取远程计算机的各种数据信息,控制远程计算机的各种行为,而这就像操作本地机一样方便、简单。WMI从根本上说应该为一种服务,并且对于本地不同的用户,WMI所有的权限也不一样。计算机超级用户可以为计算机中的每一个用户设定不同的WMI权限。在默认状态下,超级用户拥有WMI的一切权限。提供WMI服务是通过程序"WinMgmt.exe"来实现的。可以从"System32\Wbem"目录中找到这个文件。11.1WMI程序设计.Net对WMI提供了全面的支持,.Net为VisualC#能够操作WMI提供了一个专门的命名空间"System.Management",在命名空间"System.Management"中提供了大量用以处理和WMI相关的类、接口和枚举。在使用WMI之前,必须在工程中添加对System.Management.dll的引用,然后声明。命名空间"System.Management"中的成员是非常复杂的,由于篇幅所限完全介绍这些成员是不可能的,也是没有要的,但是要了解、掌握在VisualC#中使用WMI,下面六个类应该是学习的重点,分别是ConnectionOptions、ManagementScope、ObjectQuery、ManagementObjectSearcher、ManagementObjectCollection和ManagementObject11.1WMI程序设计ConnectionOptions类ConnectionOptions类主要的功能是为建立的WMI连接提供所需的所有设置。在利用WMI对远程计算机进行操作的时候,首先要进行WMI连接,WMI连接主要使用的是ManagementScope类,成功完成WMI连接就要提供远程计算机WMI用户名和口令。ConnectionOptions类可以通过其属性来提供这些信息。11.1WMI程序设计ManagementScope类通过ManagementScope类能够建立和远程计算机(或者本地计算机)的WMI连接,表示管理可操作范围。ObjectQuery类ObjectQuery类或其派生类用于在ManagementObjectSearcher中指定查询。程序中一般采用查询字符串来构造ObjectQuery实例。其中的查询字符串是一种类似SQL语言的WQL语言。11.1WMI程序设计ManagementObjectSearcher类ManagementObjectSearcher主要是根据指定的查询检索WMI对象的集合。ManagementObjectSearcher组成成员也非常简单,其Get方法是非常重要的,ManagementObjectSearcher通过Get方法进行WMI查询,并把得到的结果形成集合。Get方法的返回值是一个ManagementObjectCollection实例,它包含匹配指定查询的对象。11.1WMI程序设计ManagementObjectCollection类ManagementObjectCollection类非常简单,它主要表示WMI实例的不同集合其中包括命名空间、范围和查询观察程序等。11.1WMI程序设计ManagementObject类ManagementObject类为单个管理对象或类。通过ManagementObject中的方法可以调用ManagementObject对应的对象,从而执行相应的操作。ManagementObject类是一个内容丰富的类。11.1WMI程序设计案例分析:利用C#语言和WMI实现一个可以读取电脑的硬件信息的程序着重了解对WMI的使用方法C#的WMI编程1C#上位机程序设计2复习3Contents目录11.2上位机程序设计在工程中经常需要对现场数据进行统计、分析、制表、打印、绘图、报警等,同时,又要求对现场装置进行实时控制,完成各种规定操作,达到集中管理的目的。在这样的应用环境当中,下位机通常采用单片机、DSP或FPGA等芯片来实现,完成数据的采集及对装置的控制,而由PC机作为上位机,完成各种复杂的数据处理及对下位机的控制。这时候我们就需要设计一款友好、易用的上位机程序来帮助用户进行数据的处理和分析。实现上位机程序的方法有很多,适合的语言也很多,包括VisualBasic、VisualC++,当然也可以利用C#来实现。而具体的实现上位机和下位机通信的接口也可以有很多种,如串口、USB接口、GBIP接口、LAN口,甚至通过WIFI来进行通信。11.2上位机程序设计基于C#的串口通信方法串口通信,即通过电脑的COM口与下位机控制芯片的串口进行连接通信,主要功能是下位机和上位机交互通信,是二者形成整体的关键模块,没有合理的上位机串口通信设置,就无法与下位机匹配成实时数据接收的完整系统,因此串口通信是二者形成关联的桥梁。利用C#是非常容易实现的。在VS2012的工具箱中,直接拖放一个SerialPort控件到相关解决方案当中即可使用串口进行通信11.2上位机程序设计SerialPort类的基本操作设置串口属性(可在GUI界面中设置,也可以在代码中设置,比如波特率、端口名称等)serialPort1.BaudRate=9600;serialPort1.PortName=“COM2”;串口基本操作(打开关闭)serialPort1.Open();serialPort1.Close();数据发送serialPort1.Wr

温馨提示

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

评论

0/150

提交评论