我必须制作一个简单的程序,向服务器报告显示器的状态(是开/关还是只是未连接)。
到目前为止,我正在使用在另一个讨论中找到的这种方法,但它每次都会返回 true,即使我已经断开了显示器的连接。
public static Boolean isMonitorActive()
{
Boolean active = false;
var query = "select * from WmiMonitorBasicDisplayParams";
using (var wmiSearcher = new ManagementObjectSearcher("\\root\\wmi", query))
{
var results = wmiSearcher.Get();
foreach (ManagementObject wmiObj in results)
{
// get the "Active" property and cast to a boolean, which should
// tell us if the display is active. I've interpreted this to mean "on"
active = (Boolean)wmiObj["Active"];
return active;
}
}
return active;
}
我必须每 2-3 分钟检查一次监视器的状态,因此我需要使用与系统中的 MonitorCout 变量不同的东西,因为它已初始化并从程序的开始到结束保持不变(如果我是没有记错)。
感谢您的阅读和帮助。
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)