.NET 4.x Монитор не выходит из сна по истечении времени - C#

Узнай цену своей работы

Формулировка задачи:

Мне надо сделать так, что по истечение 1 минуты монитор выключался, а потом через 10 секунд монитор включался. С выключение проблем нету а вот что бы выходил из сна по истечение 10 секунд не получается, просто не работает, пока я не нажму пробел
//Выключение монитора 
 
        [DllImport("user32.dll")]
        private static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
 
        [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
        private static extern void mouse_event(IntPtr dwFlags, uint dx, uint dy, uint dwData, UIntPtr dwExtraInfo);
 
        private const int MOVE = 0x0001;
        private const int HWND_BROADCAST = 0xffff;
        private const int WM_SYSCOMMAND = 0x0112;
        private const int SC_MONITORPOWER = 0xF170;
 
        public void OffMonitor()
        {
            SendMessage((IntPtr)HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2);
        }
 
        public void PowerMonitor()
        {
            SendMessage((IntPtr)HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, -1);
        }
 
if (TimeEllapsed.TotalSeconds >= 60)
            {
                Stop();
                DialogResult result = MessageBox.Show(this, "Отключить монитор", "Отключить монитор", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (result == DialogResult.Yes)
                {
                    TimeSpan interval = new TimeSpan(0, 0, 10);
                    OffMonitor();
                    Thread.Sleep(interval);
                    PowerMonitor();
                    Start();
                }
Монитор планируеться выключать на 5 минут, просто для тестирование программы выключаю его на 10 сек
есть у кого то варианты ?
Я уже ставил 60 секунд не работает
Может надо создать второй поток (((

Решение задачи: «.NET 4.x Монитор не выходит из сна по истечении времени»

textual
Листинг программы
 TimeSpan interval = new TimeSpan(0, 0, 10);
                    OffMonitor();
                    Thread.Sleep(interval);
PowerMonitor();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5