使用.NET/WMI获取PC的监视器信息

min*_*int 5 .net c# wmi monitor

无论如何使用WMI/.Net来获取监视器信息,如制造商,序列号,监视器大小等?

使用脚本也是一个选项,或者我可以直接查询注册表以获取此信息?

SELECT * FROM Win32_DesktopMonitor 在这种情况下,我并没有真正为我返回任何有用的信息.

Roo*_*oss 11

嘿,我使用这个工具进行了很多我的WMI工作,特别是在原型设计和创建POC时....

Microsoft WMI代码生成器

此工具非常适合在C#和VB.NET中为任何wmi查询或方法调用创建快速控制台应用程序代码

try
        {
            ManagementObjectSearcher searcher = 
                new ManagementObjectSearcher("root\\CIMV2", 
                "SELECT * FROM Win32_DesktopMonitor"); 

            foreach (ManagementObject queryObj in searcher.Get())
            {
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("Win32_DesktopMonitor instance");
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("Description: {0}", queryObj["Description"]);
            }
        }
        catch (ManagementException e)
        {
            MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
        }
Run Code Online (Sandbox Code Playgroud)

上面的代码将为您提供显示器的品牌和型号.