wmi查询管理:c#
Posted on | 三月 22, 2010 | 1 Comment
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{//获取包含关于WMI方法的信息,添加”System.Management”引用
ManagementClass MyClass=new ManagementClass(“Win32_Printer”);
//ManagementClass MyClass = new ManagementClass(“Win32_VideoController”);
String MyInfo= “”;
foreach(MethodData MyMethod in MyClass.Methods)
{
MyInfo += “\n———————————————–”;
MyInfo += “\n”+ String.Format(“**** ” + MyMethod.Name + ” ****”);
MyInfo += “\n———————————————–”;
MyInfo += “\n”+ String.Format(“管理类的名称: “+ MyMethod.Origin);
ManagementBaseObject MyInParams ;
MyInParams = MyMethod.InParameters;
if(!(MyInParams ==null))
{
foreach( PropertyData MyPropData in MyInParams.Properties)
{
MyInfo += “\n”+ String.Format(“输入参数名称: “+ MyPropData.Name);
MyInfo += “\n”+ String.Format(“输入参数类型: ” +MyPropData.Type.ToString());;
}
}
ManagementBaseObject MyOutParams = MyMethod.OutParameters;
if(!(MyOutParams==null))
{
foreach (PropertyData MyPropData in MyOutParams.Properties)
{
MyInfo += “\n”+ String.Format(“输出参数名称: “+MyPropData.Name);
MyInfo += “\n”+ String.Format(“输出参数类型: ” +MyPropData.Type.ToString());;
}
}
}
MessageBox.Show(MyInfo,”信息提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
}
private void button2_Click(object sender, EventArgs e)
{//获取打印队列信息,测试时启动一个打印操作
String Query= “SELECT * FROM Win32_PrintJob”;
ManagementObjectSearcher JobQuery=new ManagementObjectSearcher(Query);
ManagementObjectCollection Jobs = JobQuery.Get();
//显示打印队列中的操作信息
String MyInfo = “”;
foreach(ManagementObject Job in Jobs)
{
MyInfo +=”\n”+ String.Format(“标题: ” + Job["Caption"]);
MyInfo +=”\n”+ String.Format(“数据类型: ” + Job["DataType"]);
MyInfo +=”\n”+ String.Format(“描述: ” + Job["Description"]);
MyInfo +=”\n”+ String.Format(“文档: ” + Job["Document"]);
MyInfo +=”\n”+ String.Format(“驱动名称: ” + Job["DriverName"]);
MyInfo +=”\n”+ String.Format(“已打印时间: ” + Job["ElapsedTime"]);
MyInfo +=”\n”+ String.Format(“主打印队列: ” + Job["HostPrintQueue"]);
MyInfo +=”\n”+ String.Format(“安装日期: ” + Job["InstallDate"]);
MyInfo +=”\n”+ String.Format(“作业Id: ” + Job["JobId"].ToString());
MyInfo +=”\n”+ String.Format(“作业状态: ” + Job["JobStatus"]);
MyInfo +=”\n”+ String.Format(“名称: ” + Job["Name"]);
MyInfo +=”\n”+ String.Format(“通知: ” + Job["Notify"]);
MyInfo +=”\n”+ String.Format(“所有者: ” + Job["Owner"]);
MyInfo +=”\n”+ String.Format(“已打印页数: “+ Job["PagesPrinted"].ToString());
MyInfo +=”\n”+ String.Format(“参数: ” + Job["Parameters"]);
MyInfo +=”\n”+ String.Format(“打印处理器: ” + Job["PrintProcessor"]);
MyInfo +=”\n”+ String.Format(“打印队列: ” + Job["Priority"].ToString());
MyInfo +=”\n”+ String.Format(“大小: ” + Job["Size"].ToString());
MyInfo +=”\n”+ String.Format(“开始时间: ” + Job["StartTime"]);
MyInfo +=”\n”+ String.Format(“状态: ” + Job["Status"]);
MyInfo +=”\n”+ String.Format(“状态掩码: ” + Job["StatusMask"].ToString());
MyInfo +=”\n”+ String.Format(“提交时间: ” + Job["TimeSubmitted"]);
MyInfo +=”\n”+ String.Format(“总页数: ” + Job["TotalPages"].ToString());
MyInfo +=”\n”+ String.Format(“结束时间: ” + Job["UntilTime"]);
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button3_Click(object sender, EventArgs e)
{//使用WMI启动记事本程序
ManagementClass MyProcess =new ManagementClass(“Win32_Process”);
object[] MyArgs = { “notepad.exe”, null, null, 0 };
MyProcess.InvokeMethod( “Create”, MyArgs);
}
private void button4_Click(object sender, EventArgs e)
{//获取Windows用户帐户和组信息
String MyInfo = “”;
String UserQuery = “SELECT * FROM Win32_UserAccount ” ;
ManagementObjectSearcher Query=new ManagementObjectSearcher(UserQuery);
MyInfo += “\n” + String.Format(new String(‘*’, 60));
MyInfo += “\n” + String.Format(” 用户”);
MyInfo += “\n” + String.Format(new String(‘*’, 60));
foreach(ManagementObject User in Query.Get())
{
MyInfo += “\n” + String.Format(“用户名称: “+User["Name"].ToString());
MyInfo += “\n” + String.Format(“用户全名: “+User["FullName"].ToString());
MyInfo += “\n” + String.Format(“安全ID: “+User["SID"].ToString());
}
String GroupQuery= “SELECT * FROM Win32_Group “;
Query =new ManagementObjectSearcher(GroupQuery);
MyInfo += “\n” + String.Format(new String(‘*’, 60));
MyInfo += “\n” + String.Format(” 组”);
MyInfo += “\n” + String.Format(new String(‘*’, 60));
foreach(ManagementObject Group in Query.Get())
{
MyInfo += “\n” + String.Format(“组名称: ” +Group["Name"].ToString());
MyInfo += “\n” + String.Format(“组描述: ” + Group["Description"].ToString());
MyInfo += “\n” + String.Format(“安全ID: “+ Group["SID"].ToString());
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button5_Click(object sender, EventArgs e)
{//获取CPU编号
ManagementClass MyClass= new ManagementClass(“Win32_Processor”);
ManagementObjectCollection MyCollection= MyClass.GetInstances();
String MyInfo=”当前系统CPU编号是:”;
string MyCPUID = “”;
foreach (ManagementObject MyObject in MyCollection)
{
MyCPUID= MyObject.Properties["ProcessorId"].Value.ToString();
break;
}
MyInfo += MyCPUID;
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button6_Click(object sender, EventArgs e)
{//获取第一块硬盘编号
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_PhysicalMedia”);
String MyInfo = “第一块硬盘编号是:”;
String MyHardDiskID = “”;
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyHardDiskID = MyObject["SerialNumber"].ToString().Trim();
break;
}
MyInfo += MyHardDiskID;
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button7_Click(object sender, EventArgs e)
{//获取系统已经停止的服务
String MyInfo = “当前系统已经停止的服务包括:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service WHERE State= ‘Stopped’”);
foreach(ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
MyInfo += “\n” + String.Format(“State: ” + MyObject["State"].ToString());
MyInfo += “\n” + String.Format(“StartName: ” + MyObject["StartName"].ToString());
MyInfo+=”\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button8_Click(object sender, EventArgs e)
{//获取系统正在运行的服务
String MyInfo = “当前系统正在运行的服务包括:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service WHERE State= ‘Running’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
MyInfo += “\n” + String.Format(“State: ” + MyObject["State"].ToString());
MyInfo += “\n” + String.Format(“StartName: ” + MyObject["StartName"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button9_Click(object sender, EventArgs e)
{//获取服务所属的程序名称
String MyInfo = “系统注册服务的程序名称如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
try
{
MyInfo += “\n” + String.Format(“PathName: ” + MyObject["PathName"].ToString());
}
catch
{
}
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button10_Click(object sender, EventArgs e)
{//获取系统服务的描述信息
String MyInfo = “系统注册服务的描述信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
try
{
MyInfo += “\n” + String.Format(“Description: ” + MyObject["Description"].ToString());
}
catch
{
}
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button11_Click(object sender, EventArgs e)
{//获取系统服务的所有信息
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service”);
FileStream MyStream = new FileStream(“C:\\MyText.txt”, FileMode.Create);
StreamWriter MyWriter = new StreamWriter(MyStream, Encoding.Default);
MyWriter.WriteLine( “系统注册服务的描述信息如下:”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyWriter.WriteLine(MyObject.GetText(TextFormat.WmiDtd20));
MyWriter.WriteLine(“\n===========================================================”);
}
MyWriter.Flush();
MyWriter.Close();
MyStream.Close();
MessageBox.Show(“请查看C:\\MyText.txt文件中的系统服务信息。”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button12_Click(object sender, EventArgs e)
{//获取系统显示设备颜色值
String MyInfo = “系统显示设备的当前颜色值是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentNumberOfColors: ” + MyObject["CurrentNumberOfColors"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button13_Click(object sender, EventArgs e)
{//获取当前显示的垂直分辨率
String MyInfo = “系统当前显示设备的垂直分辨率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentVerticalResolution: ” + MyObject["CurrentVerticalResolution"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button14_Click(object sender, EventArgs e)
{//获取当前显示的水平分辨率
String MyInfo = “系统当前显示设备的水平分辨率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentHorizontalResolution: ” + MyObject["CurrentHorizontalResolution"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button15_Click(object sender, EventArgs e)
{//获取显示设备的当前显示模式
String MyInfo = “系统显示设备的当前显示模式是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“VideoModeDescription: ” + MyObject["VideoModeDescription"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button16_Click(object sender, EventArgs e)
{//获取显示设备的显示处理器
String MyInfo = “系统显示设备的显示处理器名称是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“VideoProcessor: ” + MyObject["VideoProcessor"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button17_Click(object sender, EventArgs e)
{//获取当前显示设备的刷新速率
String MyInfo = “系统显示设备的当前刷新速率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentRefreshRate: ” + MyObject["CurrentRefreshRate"].ToString())+”赫兹”;
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button18_Click(object sender, EventArgs e)
{//获取显示设备的驱动版本号
String MyInfo = “系统显示设备的驱动程序版本号是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“DriverVersion: ” + MyObject["DriverVersion"].ToString()) ;
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button19_Click(object sender, EventArgs e)
{//获取显示设备的驱动程序文件
String MyInfo = “系统显示设备的驱动程序文件是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“InstalledDisplayDrivers: ” + MyObject["InstalledDisplayDrivers"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button20_Click(object sender, EventArgs e)
{//获取显示设备的最大刷新速率
String MyInfo = “系统显示设备的最大刷新速率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“MaxRefreshRate: ” + MyObject["MaxRefreshRate"].ToString()) + “赫兹”;
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button21_Click(object sender, EventArgs e)
{//获取显示设备的最小刷新速率
String MyInfo = “系统显示设备的最小刷新速率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“MinRefreshRate: ” + MyObject["MinRefreshRate"].ToString()) + “赫兹”;
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button22_Click(object sender, EventArgs e)
{//获取系统显示设备的名称
String MyInfo = “系统显示设备的名称是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button23_Click(object sender, EventArgs e)
{//获取显示设备的PNPDeviceID
String MyInfo = “系统显示设备的PNPDeviceID是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_VideoController”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“PNPDeviceID: ” + MyObject["PNPDeviceID"].ToString());
MyInfo += “\n================================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
—————————————————
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Management;
using System.IO;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{//获取声音设备的产品名称
String MyInfo = “系统声音设备的产品名称是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_SoundDevice”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“ProductName: ” + MyObject["ProductName"].ToString());
MyInfo += “\n=======================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button2_Click(object sender, EventArgs e)
{//获取声音设备的PNPDeviceID
String MyInfo = “系统声音设备的PNPDeviceID是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_SoundDevice”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“PNPDeviceID: ” + MyObject["PNPDeviceID"].ToString());
MyInfo += “\n=======================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button3_Click(object sender, EventArgs e)
{//获取声音设备的制造商名称
String MyInfo = “系统声音设备的制造商是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_SoundDevice”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Manufacturer: ” + MyObject["Manufacturer"].ToString());
MyInfo += “\n=======================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button4_Click(object sender, EventArgs e)
{//获取SQL Server服务信息
String MyInfo = “当前SQL Server服务信息是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_Service WHERE DisplayName=’SQL Server (SQLEXPRESS)’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo+=”\n”+MyObject.GetText(TextFormat.Mof);
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button5_Click(object sender, EventArgs e)
{//获取驱动程序所属的程序文件
String MyInfo = “系统注册驱动程序的程序文件如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_SystemDriver”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
try
{
MyInfo += “\n” + String.Format(“PathName: ” + MyObject["PathName"].ToString());
}
catch
{
}
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button6_Click(object sender, EventArgs e)
{//获取系统已经停止的驱动程序
String MyInfo = “当前系统已经停止的驱动程序包括:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver WHERE State= ‘Stopped’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
MyInfo += “\n” + String.Format(“State: ” + MyObject["State"].ToString());
MyInfo += “\n============================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button7_Click(object sender, EventArgs e)
{//获取系统驱动程序的所有信息
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver”);
FileStream MyStream = new FileStream(“C:\\MyDriver.txt”, FileMode.Create);
StreamWriter MyWriter = new StreamWriter(MyStream, Encoding.Default);
MyWriter.WriteLine(“系统注册驱动程序的信息如下:”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyWriter.WriteLine(MyObject.GetText(TextFormat.Mof));
MyWriter.WriteLine(“\n================================================”);
}
MyWriter.Flush();
MyWriter.Close();
MyStream.Close();
MessageBox.Show(“请查看C:\\MyDriver.txt文件中的系统驱动程序信息。”, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button8_Click(object sender, EventArgs e)
{//获取系统驱动程序的描述信息
String MyInfo = “系统注册驱动程序的描述信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
try
{
MyInfo += “\n” + String.Format(“Description: ” + MyObject["Description"].ToString());
}
catch
{
}
MyInfo += “\n========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button9_Click(object sender, EventArgs e)
{//获取系统正在运行的驱动程序
String MyInfo = “当前系统正在运行的驱动程序包括:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver WHERE State= ‘Running’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name: ” + MyObject["Name"].ToString());
MyInfo += “\n” + String.Format(“State: ” + MyObject["State"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button10_Click(object sender, EventArgs e)
{//获取磁盘驱动器驱动程序信息
String MyInfo = “系统磁盘驱动器驱动程序的信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver WHERE DisplayName=’磁盘驱动器’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + MyObject.GetText(TextFormat.Mof);
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button11_Click(object sender, EventArgs e)
{//获取系统非内核驱动程序信息
String MyInfo = “系统非内核驱动程序的信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * From Win32_SystemDriver WHERE ServiceType <> ‘Kernel Driver’”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + MyObject.GetText(TextFormat.Mof);
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button12_Click(object sender, EventArgs e)
{//获取串行通信端口信息
String MyInfo = “当前系统串行通信端口信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“root\\CIMV2″,”SELECT * FROM Win32_SerialPort”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + MyObject.GetText(TextFormat.Mof);
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button13_Click(object sender, EventArgs e)
{//获取计算机的CPU地址宽度
String MyInfo = “当前计算机的CPU地址宽度是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“AddressWidth: ” + MyObject["AddressWidth"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button14_Click(object sender, EventArgs e)
{//获取计算机的CPU数据宽度
String MyInfo = “当前计算机的CPU数据宽度是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“DataWidth : ” + MyObject["DataWidth"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button15_Click(object sender, EventArgs e)
{//获取计算机CPU的当前时钟频率
String MyInfo = “计算机CPU的当前时钟频率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentClockSpeed : ” + MyObject["CurrentClockSpeed"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button16_Click(object sender, EventArgs e)
{//获取计算机CPU的最大时钟频率
String MyInfo = “计算机CPU的最大时钟频率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“MaxClockSpeed : ” + MyObject["MaxClockSpeed"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button17_Click(object sender, EventArgs e)
{//获取计算机CPU的当前电压
String MyInfo = “计算机CPU的当前电压是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“CurrentVoltage : ” + MyObject["CurrentVoltage"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button18_Click(object sender, EventArgs e)
{//获取计算机CPU的外部频率
String MyInfo = “计算机CPU的外部频率是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“ExtClock : ” + MyObject["ExtClock"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button19_Click(object sender, EventArgs e)
{//获取计算机CPU的二级缓存
String MyInfo = “计算机CPU的二级缓存尺寸是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“L2CacheSize: ” + MyObject["L2CacheSize"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button20_Click(object sender, EventArgs e)
{//获取计算机CPU的当前使用百分比
String MyInfo = “计算机CPU的当前使用百分比是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“LoadPercentage : ” + MyObject["LoadPercentage"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button21_Click(object sender, EventArgs e)
{//获取计算机CPU的制造商名称
String MyInfo = “计算机CPU的制造商名称是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Manufacturer : ” + MyObject["Manufacturer"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button22_Click(object sender, EventArgs e)
{//获取计算机CPU的产品名称
String MyInfo = “计算机CPU的产品名称是:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Name : ” + MyObject["Name"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void button23_Click(object sender, EventArgs e)
{//获取计算机CPU的版本信息
String MyInfo = “计算机CPU的版本信息如下:”;
ManagementObjectSearcher MySearcher = new ManagementObjectSearcher(“SELECT * FROM Win32_Processor”);
foreach (ManagementObject MyObject in MySearcher.Get())
{
MyInfo += “\n” + String.Format(“Version: ” + MyObject["Version"].ToString());
MyInfo += “\n=========================================================”;
}
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
相关文章:
评论|Comments
One Response to “wmi查询管理:c#”
留言|Leave a Reply
![如果您自认为是一位忠实的Silverlight-Fans,那么请将此标志放到您的博客中成为一名真正的[银光使者]](http://images.cnblogs.com/cnblogs_com/alamiye010/Silverlighter1.jpg)
三月 22nd, 2010 @ 22:28
private void button6_Click(object sender, EventArgs e)
{//扫描指定计算机的端口状态
string MyIP = “172.16.254.2″;//计算机IP地址
int MyStartPort=20; //起始端口号
int MyEndPort =80; //结束端口号
try//速度太慢
{
string MyInfo = “扫描结果如下:\n”;
for (int i = MyStartPort; i < MyEndPort+1; i++)
{
TcpClient MyTCP = null;
try
{
MyTCP = new TcpClient(MyIP, i);
MyInfo += “端口 ” + i.ToString() + ” 开放!\n”;
}
catch
{
}
}
MyInfo += “扫描端口结束!\n”;
MessageBox.Show(MyInfo, “信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,”信息提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}