WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍_win服务器

WQL就是WMI中的查询语言,WQL的全称是WMI Query Language,简称为WQL,翻译成中文好像可以成为Windows管理规范查询语言。熟悉SQL语言的朋友会感觉它和SQL非常相似。

WQL其实非常简单,它有如下特点:
1、每个WQL语句必须以SELECT开始;
2、SELECT后跟你需要查询的属性名(我刚才对应SQL将其称之为字段名了),也可以像SQL一样,以*表示返回所有属性值;
3、FROM关键字;
4、你要查询的类的名字;
5、另外,如果你想精确查询结果还可以加上WHERE条件从句。比如某个类有Enable属性,你可以在查询的时候加上WHERE ENABLE=true。

如以下的都是正确的WQL语句:

复制代码 代码如下:

Select * From Win32_LogicalDisk where drivetype=3 '‘'‘查询所有硬盘分区
SELECT * FROM Win32_share '‘查询所有共享目录
SELECT * FROM Win32_NetworkAdapterConfiguration WHERE DHCPEnabled=TRUE
SELECT Description FROM Win32_Account WHERE Name='Administrator'
SELECT Freespace,DeviceID FROM Win32_LogicalDisk

在WinXP和Win2003中有一个自带的WQL测试工具,叫wbemtest.exe,用它就能查看有哪些类和类有哪些 属性,使用方法如下:
首先,运行wbemtest.exe,如下图:

点“确定”之后会出现一个“Windows管理规范测试器”的窗口,如下图:

点击“连接”会出现一个对话框,我们可以选择连接本地主机或者远程主机,如下图:

如果是本机测试并且是用管理员身份登录,可以不用填写用户名和密码,如果是链接远程主机则需要填写远程主机上的用户名和密码(建议使用远程主机上的管理员身份登录),点击“连接”之后就会回到主界面。注意,只有登录之后才能查看和查询。

点击“查询”按钮,输入我们要查询的WQL语句,如"Select * From Win32_LogicalDisk",这是查询系统逻辑驱动器的WQL语句,如图:

这是我们多半会得到一个号码为"0x80041010" ,描述为"无效类别"的错误,如下图:

出现这个错误是因为刚开始默认的名称空间为"root/default",这时我们需要更改名称空间。再点击“连接”按钮,将默认的"root/default"更改为"root/cimv2",然后再点"连接"按钮,如下图:

登录成功之后我们就可以查看系统有哪些类,并且还可以执行WQL查询了。
点击"枚举类别"按钮,然后在弹出的对话框中输入要查找的类名就可以查询类的属性了。如下图(注意:我没有填写超类别名称,并且选中"递归"单选按钮,这样就是递归列举系统中所有的类):

查询结果如下图:

这些可都是有用的东西哦,如果你细心,你会这个列表里发现我以前所用到的WQL语句里设计到的所有的类,如Win32_LogicalDisk、Win32_share等等。需要注意的是,有些还有括号,这些是方法。

下面是一些查询的结果:

我们还可以对其中某一项数据双击查看属性,如下图:

如果我们不习惯这种方式查看,我们还可以点击上面这个窗口中的"显示MOF“按钮,下图是我点击"显示MOF“按钮的结果:

从上面的图里就能看出这个类有哪些属性及对应的属性值了。

今天的内容看起来似乎和.net没有什么联系,但是只有了解并且熟悉了WQL才能使我们快速和顺利地编写.net代码。

WMI 测试器 (wbemtest.exe) 演练

现在,您对可用于浏览和查看 CIM 的工具已经有了一些认识,让我们使用 WMI 测试器 (wbemtest.exe) 来检查Win32_Process 类定义并修改清单 2,以便从在您的本地计算机上运行的进程检索一些属性。

打开一个命令提示,键入 C:\>wbemtest.exe,按下 Enter 来开始 WMI 测试器工具。请注意,大部分按钮在主 WMI 测试器窗口上是被禁用的,这说明此时您没有连接到 WMI。

单击 Connect? 连接到本地或远程计算机上的 WMI 服务。显示“连接”对话框,它提供一个标记为Namespace 的文本输入区域,该区域默认值为 root\default。将 Namespace 区域的值更改为root\cimv2,单击“连接”对话框的 Connect 按钮返回到主 WMI 测试器窗口。

主窗口中左上角的命名空间标识符应该显示为 root\cimv2。请注意,所有的按钮现在都已启用,这说明在当前凭据环境下,您已经成功连接到本地主机上的 WMI。单击 Enum Classes? 打开“超类信息”对话框。

在“超类信息”对话框中,不要填写 Enter superclass name 区域,单击 Recursive 选项,单击 OK 以枚举 root\cimv2 名称空间中定义的所有 CIM 类。

此时,您可能应该正在查看一个列出了数百个类定义的“查询结果”对话框。类的数量主要取决于您正在运行的 Windows 的版本。例如,如果使用 Windows 2000,则您应该会看到大约 600 个类定义。如果运行 Windows XP,则您应该会看到大约 900 个类定义。

请注意,列于“查询结果”对话框顶部的类是以两个下划线为开头的。这些是系统类。系统类是预定义的 CIM 类,支持内部 WMI 配置与操作,例如提供程序注册、命名空间安全性及事件通知等。现在,忽略系统类,向下滚动“查询结果”对话框直至看到以 CIM_ 开头的类。

名称以 CIM_ 开头的类是由 DMTF 维护的核心与公共基类。继续向下滚动直至到达以 Win32_ 开头的类。

名称以 Win32_ 开头的类是 Microsoft 扩展类,表示 Windows 特定的托管资源。如果这是您第一次检查root\cimv2 命名空间,您可能希望熟悉 root\cimv2 命名空间中的类的完整集合,尤其是有 Win32_ 前缀的类。

向下滚动“查询结果”对话框直至到达 Win32_Process 类,双击该类名打开 Win32_Process 对话框的对象编辑器。

“对象编辑器”对话框显示被选定类的定义和实现的详细信息(属性和方法)。回忆一下我们之前讨论的内容 — 类定义是 WMI 可管理资源的蓝图。

选择 Hide System Properties 复选框隐藏系统属性。剩余的 Win32_Process 属性表示您可以从在本地或远程计算机上运行的进程检索的信息。

要完成您的 WMI 脚本练习,尝试去检索 NameHandle 和 ProcessID 属性。使用前面的三个清单之一作为模板,试着在进行到第 7 步之前运行脚本。

 要在本地计算机上运行脚本,将 strComputer 变量的值设置为“.”(引号内的一个单点)。

在运行新创建的 GetProcesses.vbs 脚本之后,您可以用 WIMI 测试器验证脚本的结果。在 Win32_Process 对话框的对象编辑器中,单击 Instances。产生的查询结果对话框列出在计算机上运行的进程的实例。双击一个指定的进程实例,查看该实例的详细信息。

 软件下载地址:http://www.jb51.net/softs/193574.html

WMI 测试器演练的答案

复制代码 代码如下:

strComputer = "." ' Dot (.) equals local computer in WMI
Set wbemServices = Getobject("winmgmts:\\" & strComputer)
Set wbemObjectSet = wbemServices.InstancesOf("Win32_Process")
For Each wbemObject In wbemObjectSet
WScript.Echo "Name: " & wbemObject.Name & vbCrLf & _
" Handle: " & wbemObject.Handle & vbCrLf & _
" Process ID: " & wbemObject.ProcessIDNext

时间: 2024-07-29 08:21:19

WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍_win服务器的相关文章

压力测试工具ab.exe简介

一.介绍在安装apache时其bin目录下可以找到ab.exe文件,也可以单独下载该文件.这是一个小压力测试工具. 二.使用cmd面板中切换到该文件所在路径,输入ab -help查看帮助. 常用命令 ab -n 1000 -c 100  http://127.0.0.1:8080/testDemo 这行命令的含义是: -n 1000发出表示1000个请求, -c 100表示100个并发数去访问该个项目.若运行正常,会显示出运行的相关信息.若没有反应或者无返回,可能要考虑程序的内存处理相关问题了.

无线网络性能监控测试工具iPerf的使用方法

很多公司都在将自己的无线网络升级到802.11n,以实现更大的吞吐量.更广的覆盖范围和更高的可靠性,然而保证无线LAN(WLAN)的性能对于确保足够的网络容量和覆盖率尤为重要.下面,我们将探讨如何通过iPerf来测定网络性能,这是一个简单易用测量TCP/UDP的吞吐量.损耗和延迟的工具. 应用前的准备 iPerf是专门用于简化TCP性能优化的工具,使用它可以很容易地测量吞吐量和带宽的最大值.当与UDP一起使用时,iPerf还可以测量数据丢失和延迟(抖动).iPerf可以在任何IP 网络上运行,包

Android自动测试工具Monkey的实现方法_Android

1. Android Monkey 实现操作流程: 准备:在eclipse里安装Phyon插件,可以选择在线安装,也可以下载zip解压后放在eclipse安装目录的dropins下,如 : /personal/software/android_developtools/adt-bundle-mac-x86_64-20130522/eclipse/dropins/PyDev 2.8.2 插件准备就绪就重启eclipse,检验PyDev是否正常工作,然后开始MonkeyRunner测试: 第一步:

Apache压力测试工具ab的使用方法

在windows中,如果在windows下安装apache,就可以在bin下找到ab.exe 直接就可以使用,不用依赖其他的dll 打开运行输入cmd进入到DOS命令行界面,cd 进入到Apache/bin 目录,输入命令:  代码如下 复制代码 ab.exe –n 10000 –c 100 localhost/index.php //其中-n代表请求数,-c代表并发数 上面一行命令的意思是访问index.php这个页面10000次,每次的并发访问为100.执行命令之后耐心等待一段时间后就会出来

压力测试工具JMeter的使用方法图解

一.JMeter 基本界面和组件的概念 现在看到了Jmeter的主界面.下面介绍Jmeter中主要组件的功能和作用, 首先我们看看Jmeter在概念上的组件分类如图 1.Threads:这个组件主要用来控制Jmeter并发时产生线程的数量,在它的下一级菜单下只有一个组件(线程组),可以这么理解每个线程就是一个虚拟的用户.所有的其他类型组件必须是(线程组)节点的子节点. 2.配置单元:和Sample组件一起工作,主要用来配置Sample如何来发起请求访问服务器,这个东西的主要特点是可以把一些Sam

Android自动测试工具Monkey的实现方法

1. Android Monkey 实现操作流程: 准备:在eclipse里安装Phyon插件,可以选择在线安装,也可以下载zip解压后放在eclipse安装目录的dropins下,如 : /personal/software/android_developtools/adt-bundle-mac-x86_64-20130522/eclipse/dropins/PyDev 2.8.2 插件准备就绪就重启eclipse,检验PyDev是否正常工作,然后开始MonkeyRunner测试: 第一步:

PhotoShop中的索套工具使用方法详细介绍

详细教程 [1] [2] [3]  下一页

流行的软件测试工具介绍_服务器其它

英文原版书籍下载:https://bitbucket.org/xurongzhong/python-chinese-library/downloadss. 精品文章推荐: python 2.7 中文教程及自动化测试介绍 使用Python学习selenium测试工具 性能测试艺术 Java单元测试之模拟利器-使用PowerMock进行Mock测试 网络工具ATC 主页 http://facebook.github.io/augmented-traffic-control/ 代码托管:https:/

Linux系统的网络管理测试工具简介

本文是介绍管理Linux系统网络性能技巧的文章,主要介绍了route.netstat.tcpdump三种网络管理测试工具的使用方法及其可实现的功能. route 在配置网络时,要为机器指定接收数据包时该包要经过的路径.在Linux系统中,提供一个命令route,这个命令可以为ifconfig命令配置的网卡设置静态路由.这种设置工作通常在/etc/rc.d/rc.inet1中引入,在系统引导时进行. 我们通过几个例子来说明如何使用route命令: route add -net 127.0.0.0