WMI入门教程之怎么使用WMI?
2019/7/10 21:24:21
本文主要是介绍WMI入门教程之怎么使用WMI?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
知道了WMI是什么以后,肯定想要知道如何使用WMI干活。它能写“Hello World”吗?WMI没那么无聊,它一上来就会问你“你想要什么?”或者“你想要更改什么?”。。。
WMI工具
Windows本身提供了几个WMI工具供用户使用,包括WMIC.exe、WBEMTest.exe和WMI Administrative Tools等。前两个是系统自带的,最后一个需要自己下载安装。不过说实话,我最喜欢WMI Administrative Tools。下载WMI Administrative Tools在这里。下面以WMI Administrative Tools为例说明如何使用工具使用WMI。
下载并安装WMI Administrative Tools之后,会有4个工具,最常用的是其中的WMI CIM Studio。在开始菜单里单击它,你会发现它是以网页形式在IE浏览器中打开的。
使用步骤如下:
1、单击页面上部的电脑图标,会显示一个对话框,单击“Connect”按钮,如图1所示;
图1
2、任何时候出现如图2所示的登陆对话框,单击OK按钮即可;
图2
3、选择合适的命令空间(这里选择常用的root\cimv2),然后单击OK按钮,如图3所示;
图3
4、直接双击右侧类名,或者单击上部的望远镜按钮,在弹出的查找对话窗中输入你要查找的完整类名或者类名的一部分,单击Go按钮查找;并在查找结果中选择你要查看的类名,单击OK按钮,如图4所示;
图4
5、单击右上部倒数第4个实例按钮,即可得到本机所有安装的软件列表,如图5所示;
图5
任何WMI类以及实例的查看均可参考以上步骤。
PowerShell脚本操作WMI
以前对WMI的操作都是通过VB Script进行的,现在更多人倾向于使用PowerShell来访问WMI类和对象。下面给出使用PowerShell命令查询本机安装的所有软件列表的示例:
PS C:\Users\luke> Get-WmiObject -Class Win32_Product | select name
name
----
HelpDesk
Windows Installer Clean Up
XML Notepad 2007
Microsoft Network Monitor 3.4
Microsoft Visual Studio 2010 Service Pack 1
ScreenRecorder
Microsoft Office Visual Web Developer 2007
Microsoft Office Visual Web Developer MUI (English) 2007
...
比使用带界面的WMI要简单的多,而且还可以有很多筛选条件。
.Net操作WMI
使用.Net中的高级语言来操作WMI也非常的方便。下面示例演示C#操作WMI获得本机安装软件的列表的代码:
using System;
using System.Management;
namespace WMIDemo
{
class Program
{
static void Main(string[] args)
{
ManagementPath wmiPath = new ManagementPath(@"\\.\root\cimv2:Win32_Product");
ManagementClass wmiClass = new ManagementClass(wmiPath);
ManagementObjectCollection instances = wmiClass.GetInstances();
Console.WriteLine("Name, Vendor");
foreach (ManagementObject product in instances)
{
Console.WriteLine(String.Format("{0}, {1} ", product["Name"], product["Vendor"]));
}
}
}
}
结语
WMI是一个多面手,你个可以从各个测面来使用它。套用一句广告词:关于WMI,你怎么用?
这篇关于WMI入门教程之怎么使用WMI?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-09-14SharePoint 2019 用 PowerShell将启用发布功能站点网站集另存为模板
- 2022-08-30PowerShell教程 - 程序性能和BUG分析工具
- 2022-08-30PowerShell教程 - 模块管理(Modules Management)
- 2022-08-29PowerShell教程 - Web requests(Web请求)
- 2022-08-26PowerShell教程 - 日期时间管理(Date & Time Management)
- 2022-08-25PowerShell教程 - 磁盘与硬件管理(Disk & Hardware Management)
- 2022-08-25PowerShell教程 - 系统事件管理(System Event Management)
- 2022-08-25PowerShell教程 - 文件系统管理(File System Management)
- 2022-08-24PowerShell教程 - 网络管理(Network Management)
- 2022-08-24PowerShell