C#C#遍历系统所设置的打字与印刷机,使用WMI格局赢得打字与印刷机的拥有属性

C#,有网络好友发新闻来领悟,C#哪些遍历系统已经安装的持有打字与印刷机,并赢得每个打字与印刷机的相关消息,如:端口,名称等等

C#个中,尽管在 System.Drawing.Printing
那些namespace下,提供了部分对系统打字与印刷机的拜访效果,可是,说实话是太弱了,对得到打字与印刷机的有关属性基本是无能为力的。

C#个中获取打字与印刷机的详细新闻,常用的用二种艺术:

  1. 使用 Windows API
  2. 使用 WMI

自笔者那里运用的是WMI的秘籍,因为此方式,是行使了类SQL的章程,将windows的WMI管理音信,作为一种数据库的形状来提供的,使用起来相比较顺手C# 1

.NET 里面对WMI的运用,是置身 System.Management
这一个空间下的,要使用的话,要求先添加对 System.Management.dll 引用

现实代码如下:

string wmiSQL = "SELECT * FROM Win32_Printer";
ManagementObjectCollection printers = new ManagementObjectSearcher(wmiSQL).Get();

foreach (ManagementObject printer in printers)
{
    PropertyDataCollection.PropertyDataEnumerator pde = printer.Properties.GetEnumerator();

    while (pde.MoveNext())
    {
        MessageBox.Show(pde.Current.Name + " : " + pde.Current.Value);
        //显示的是 属性名 : 属性值 的形式
    }
}

相应是侦破了啊,嘿嘿

相关文章