using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Management;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace WMI_驱动
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
//SelectQuery selectQuery = new SelectQuery("select * from win32_logicaldisk");//硬盘盘符
SelectQuery selectQuery = new SelectQuery("select * from Win32_DiskDrive");//硬盘序列号 ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{
ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
listView1.Items.Add(lvi);
}
} private void button2_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_SystemDriver");//驱动程序
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
listView1.Items.Add(lvi);
}
} private void button3_Click(object sender, EventArgs e)
{ listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_USBController");//USB控制器
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
//ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(),"" },-1);
listView1.Items.Add(lvi);
} SelectQuery selectQuery2 = new SelectQuery("select * from Win32_USBHub");//USB集线器
ManagementObjectSearcher search2 = new ManagementObjectSearcher(selectQuery2);
foreach (ManagementObject Driver in search2.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
//ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(),"" },-1);
listView1.Items.Add(lvi);
} } private void Form1_Load(object sender, EventArgs e)
{
listView1.Columns.Clear();//清空列记录
ColumnHeader cZh = new ColumnHeader();//创建一个列
cZh.Text = "名称";//列名
cZh.Width = 300;
ColumnHeader cCh = new ColumnHeader();
cCh.Text = "描述";
cCh.Width = 600;
listView1.Columns.AddRange(new ColumnHeader[] { cZh, cCh });//将这两列加入listView1
listView1.View = View.Details;//列的显示模式
} private void button4_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_Printer ");//打印机
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(),"" }, -1);
listView1.Items.Add(lvi);
} } private void button5_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_PrinterConfiguration ");//打印机设置
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), "" }, -1);
listView1.Items.Add(lvi);
}
} private void button6_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_PrintJob ");//打印机任务
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), "" }, -1);
listView1.Items.Add(lvi);
}
} private void button7_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_TCPIPPrinterPort ");//打印机端口
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), "" }, -1);
listView1.Items.Add(lvi);
}
} private void button8_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_PointingDevice ");//点输入设备,鼠标
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
listView1.Items.Add(lvi);
}
} private void button9_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_Keyboard");//键盘
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), Driver["Description"].ToString() }, -1);
listView1.Items.Add(lvi);
}
} private void button10_Click(object sender, EventArgs e)
{
listView1.Items.Clear(); SelectQuery selectQuery = new SelectQuery("select * from Win32_Printer ");//打印机
ManagementObjectSearcher search = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject Driver in search.Get())
{ ListViewItem lvi = new ListViewItem(new string[] { Driver["Name"].ToString(), "" }, -1);
listView1.Items.Add(lvi);
}
}
  }
}

仅仅实现了查询的功能,后续有待加入与设备管理器类似的管理功能!

最新文章

  1. codeforces Round #320 (Div. 2) C. A Problem about Polyline(数学) D. "Or" Game(暴力,数学)
  2. [Centos 6]升级安装GCC(2)
  3. arguments 对象的老历史
  4. Linux查看redis进程
  5. leetcode174. Dungeon Game
  6. poj 1847( floyd && spfa )
  7. 实验12:Problem J: 动物爱好者
  8. [CareerCup] 2.3 Delete Node in a Linked List 删除链表的节点
  9. java FileWriter and FileReader
  10. xml文件有误
  11. ajax连接数据库并操作数据库
  12. FKCL-OS——自主的操作系统
  13. 《第一行代码》学习笔记19-广播接收器Broadcast_Receiver(2)
  14. 4句代码读取Excel到DataSet(非Excel组件)
  15. [UWP]了解IValueConverter
  16. select case when与IF的用法
  17. 解决 VS2019 打开 edmx 文件时没有 Diagram 视图的 Bug
  18. C++文件流操作
  19. GO入门——1.基础
  20. python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等)

热门文章

  1. ASP.NET MVC视图
  2. Windows完成端口与猪肉佬
  3. WCF研究-后篇
  4. CheckSynchronize实现的不必要的复杂
  5. 深入浅出RPC——深入篇(转载)
  6. 查看哪些redis命令拖慢了redis
  7. Java基础(四) StringBuffer、StringBuilder原理浅析
  8. 请你讲一讲JavaScript有哪些数据类型, 数据类型判断有哪些方法?
  9. SYN6105型 GPS子钟
  10. 『 效率工具 』Spring Boot版的轻量级代码生成器,减少70%以上的开发任务