Запретить спящий режим Windows 11C#

Место общения программистов C#
Anonymous
Запретить спящий режим Windows 11

Сообщение Anonymous »

Я изо всех сил пытаюсь предотвратить переход Windows 11 в спящий режим.
Я пробовал все комбинации:

Код: Выделить всё

ES_CONTINUOUS | ES_SYSTEM_REQUIRED | ES_AWAYMODE_REQUIRED

for (;;)
{
SetThreadExecutionState(ES_SYSTEM_REQUIRED);
// SetThreadExecutionState(ES_SYSTEM_REQUIRED | ES_CONTINUOUS);
// SetThreadExecutionState(ES_AWAYMODE_REQUIRED)
// SetThreadExecutionState(ES_AWAYMODE_REQUIRED | ES_CONTINUOUS);
// SetThreadExecutionState(ES_AWAYMODE_REQUIRED | ES_SYSTEM_REQUIRED | ES_CONTINUOUS);

Thread.Sleep(10000);
Console.WriteLine("The current time is: " + DateTime.Now);
}

private const uint ES_CONTINUOUS = 0x80000000;
private const uint ES_SYSTEM_REQUIRED = 0x00000001;
private const uint ES_DISPLAY_REQUIRED = 0x00000002;
private const uint ES_AWAYMODE_REQUIRED = 0x00000040;
Я пробовал это внутри цикла for и вне цикла for.
Ничто из того, что я делаю, не мешает системе перейти в спящий режим примерно через 3–5 минут. .
Есть ли другой способ сделать это в Windows 11?

Подробнее здесь: https://stackoverflow.com/questions/786 ... 1-sleeping

Вернуться в «C#»