¿Es posible detectar si el monitor de los usuarios está encendido usando C#?Detectar si el monitor está en C#
Sp
También he descubierto este post que es atento
http://www.netframeworkdev.com/net-base-class-library/msmonitorclass-2114.shtml
¿Es posible detectar si el monitor de los usuarios está encendido usando C#?Detectar si el monitor está en C#
Sp
También he descubierto este post que es atento
http://www.netframeworkdev.com/net-base-class-library/msmonitorclass-2114.shtml
WMI puede ayudar.
En Vista +, existe la clase WmiMonitorBasicDisplayParams, donde la propiedad "Activo" le dice si la pantalla está activa.
Aquí hay un ejemplo que funciona para mí:
using System.Management;
// ...
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"
var active = (Boolean)wmiObj["Active"];
}
}
Nunca dejo de sorprenderme por la cantidad de información oculta en WMI. –
Algunas pantallas antiguas conectadas a través de un cable VGA son generalmente dispositivos tontos, ya que solo informan información "conectada" y EDID. NO hay estado de energía presente; ¿Qué cambió en las nuevas pantallas para que puedan ver? –
@mhambra - ¿Todo? – codekaizen
Esto no se puede hacer: No hay manera de comprobar si el monitor está encendido. Puede verificar si un monitor secundario está habilitado: use System.Windows.Forms.Screen.AllScreens
No puedo creer que haya _no_ forma de comprobar programáticamente. He visto que el sistema operativo lo hace. ¿Por qué se está votando esto? – codekaizen
Toda la propiedad Active hace es decir si Windows está utilizando la pantalla o no. Además, DVI/HDMI informará una conexión incluso cuando la pantalla esté apagada. En resumen, no hay otro método de verificación aparte de algo hecho en casa, como conectar un sensor de luz o cámara web y apuntarlo a la luz de encendido del monitor :)
¿Quiere decir usar el botón de encendido en la parte delantera o auto- ¿Apagar para ahorrar energía? – thecoop
tanto si es posible – Steven