WMI概述

关于wmi的定义可以在网上和msdn中查询,我在这里想说说自己对wmi的理解。Wmi是Windows Management Instrumentation(windows管理方法)的缩写。在wmi中微软以注册表形式提供了大量的设备信息,可以通过wmi中的相关方法来修改、设置这些设备的信息,从而达到控制计算机的目的。比如可以通过root/cimv2/win32_Directory中的delete方法来删除硬盘中的指定目录。关于root/cimv2/win32_Directory会在下面的篇幅中重点介绍。

Wmi的命名空间是个树型结构的,就像windows注册表一样(如图一):

clip_image002

其中aspnet是wmi监控asp.net运行情况的命名空间。CIMV2是环境基本信息的命名空间。MicrosoftIISv2是wmi控制IIS6.0的命名空间等。我们将从CIMV2一步一步的介绍这几个命名空间中的基本属性和方法。

        WMI Tools工具介绍

1. 环境设置

windowsXp以上系统自带wmi,对于一些比较老的系统需要安装wmi的程序包,可以在微软网站上下载相关程序包和WmiTools这个工具。

2. WMI Tools工具介绍

安装完成后,执行WMI CIM Studio后,会出现让你选择wmi命名空间的提示,默认为root/cimv,一路按Enter键就ok了。如图一所示:

 图一

图一

可以看到wmi的结构组织图就像注册表一样,是个树型结构,各个节点下面都有相应的属性节点和方法。点击上图的搜索按键,输入win32_Service后,就可以查询到wmi中关于服务的相关属性和方法了,如下图所示(图二为属性,图三为方法)

图二

图二

 图三

图三

可见wmi为windows服务提供了Name,ServiceType,Status等属性,提供了Create,Stop,Start等方法,至于怎么设置这些属性和使用这些方法,我们会在下面的文章中一步一步的介绍。

Wmi Tools不仅是一个查询软件,还可以创建wmi实例,执行wql(类似于sql一样的wmi查询语句)。不过我们用的最多的还是它的查询功能,查询一些我们需要的属性和方法名。其它的创建实例等功能我们用.net来实现会更加灵活,我也会把用.net来控制wmi作为我们这个系列的重点在以后的章节中介绍的。

原文地址:https://www.cnblogs.com/tianma3798/p/3560586.html