проверьте, подключен ли монитор

Я должен сделать простую программу, которая сообщает серверу о состоянии монитора (включен или выключен или просто не подключен). Пока что я использую этот метод, который я нашел в другом обсуждении, но он просто возвращает мне истину каждый раз, даже если я отключил свой монитор.

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 в System, потому что она инициализируется и остается неизменной от начала и до конца программы (если я не ошибаюсь). Спасибо за чтение и помощь.

Ответы на вопрос(0)

Ваш ответ на вопрос