ASP.NET编程:在.NET中轻松猎取体系信息(1) -WMI篇 ...
数据库有很多应用领域,但是如果你单单学数据库的话基本上做数据库管理员比较合适而已,跟领域结合的你还得再学习那些领域知识。(其实数据挖掘我真是不懂,本来这学期开了一门课了。在.NET中轻松猎取体系信息(1)-WMI篇Montaque(原作)关头字WMI,WQL,ManagementObjectSearcher
在.NET中轻松猎取体系信息(1)-WMI篇
Montaque
声名:
1、团体的一点心得,仅供参考
2、转载时分,请保存底本。
概述:
不晓得人人有无这类体味?偶然候为了猎取体系一点点信息,好比思索一下操纵体系的版本号,大概以后屏幕的分辩率。实在说究竟就是读操纵体系某个方面的一个属性值罢了,然后就看到我们的程序中密密层层的Win32API声名,挪用,代码的可读性和保护性不问可知。到了.NET,微软供应了更加丰厚的类,有良多之前要挪用API的办法能够在.NET中十拿九稳的挪用完成。明天复杂先容一个在.NET中怎样经由过程与WMI(Windows办理标准)的通信,从而失掉猎取信息的目标。
次要思绪:
举一个猎取操纵体系共享目次和猎取主板号的例子,先容怎样使用System.Managment上面的类猎取体系相干的信息:
注释:
WMI(Windows办理标准:WindowsManagementInstrumentation)是Microsoft基于Web的企业办理(WBEM)的完成,同时也是一种基于尺度的体系办理接口。WMI最早呈现在MicrosoftWindows2000体系上,但它一样能够安装在WindowsNT4和Windows9x盘算机上。WMI是一种轻松猎取体系信息的壮大工具。
在.NET中,有一个System.Management名空间(体系默许没有援用,我们能够手动增加援用),经由过程上面的Class的操纵,能够查询体系软硬件的信息,先看一个复杂的例子:
ImportsSystem.Management
DimsearcherAsNewManagementObjectSearcher("SELECT*FROMWin32_share")
DimshareAsManagementObject
ForEachshareInsearcher.Get()
MessageBox.Show(share.GetText(TextFormat.Mof))
Nextshare
运转的了局是列出了一切体系以后共享的目次、和形貌等等。
剖析一下下面的代码,能够看到一下几点:
1、仿佛是在举行数据库操纵,有点像SQL语句。实在就是SQL操纵,这类语句被成WQL(WMIQueryLanguage),实践上是尺度SQL的一个子集加上了WMI的扩大.
2、WQL是个只读的查询言语,我们只能查询呼应的数据,不克不及用UPDATE,INSERT等更新操纵
3、代码很复杂、普通易懂
4、我们接纳了一种MOF(托管工具格局)的显现。
例子二:猎取以后主板的信息
下面的例子是一个软件方面的信息,上面看一个猎取硬件信息的例子,猎取主板的序列号和打造商:
DimsearcherAsNewManagementObjectSearcher("SELECT*FROMWin32_BaseBoard")
DimshareAsManagementObject
ForEachshareInsearcher.Get()
Debug.WriteLine("主板打造商:"&share("Manufacturer"))
Debug.WriteLine("型号:"&share("Product"))
Debug.WriteLine("序列号:"&share("SerialNumber"))
Nextshare
总结和增补:
WMI类也是分条理的,详细能够参考msdn中的WMI;转向.NET平台开辟的时分,最好能多看一些关于.NET新特征的先容,如许能够年夜幅度的提拔代码的开辟效力和运转效力。<
http://www.ckuyun.com/
竟发现没有太大的帮助。总觉得要用起来,感觉到不了位。因为公司机器的原因,一直没有安装vs.net(也从来没有用过)。以前做asp的时候一直用DW(感觉其代码联想功能不错),可现在到了asp.net却不习惯了。 如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。 JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。 业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗? 市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。 同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。 但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。
页:
[1]