SetWaitableTimer на планшете с Windows 8 завершается с ошибкой ERROR_NOT_SUPPORTED

Я установил ожидающий таймер, чтобы разбудить Windows в заданное время как таковой:

if(SetWaitableTimer(hTimer, &liWhen, 0, NULL, NULL, TRUE))
{
if(GetLastError() == ERROR_NOT_SUPPORTED)
{
//Waking is not supported
}
}

Я запускаю этот код на планшете с Windows 8 Pro из собственного настольного приложения и получаю ERROR_NOT_SUPPORTED. Если я проигнорирую это, планшет не проснется в указанное время. Если я запускаю один и тот же код с рабочего стола Windows 7, он каждый раз просыпается.

Обратите внимание, что планировщик задач Windows на том же планшете с Windows 8 также имеет неактивную опцию «Разбудить компьютер для запуска этой задачи», но родное приложение календаря Windows 8 Metro, похоже, работает & будит этот планшет из сна без проблем.

Microsoft что-то изменила в поведении настольных приложений в Windows 8? Или они внедрили новые API для управления состоянием питания?

РЕДАКТИРОВАТЬ Найденный этот «жемчужина» от Microsoft о настольной активности модератора. Очевидно, что он приостанавливает все настольные приложения, которые не запускаются как службы, пока Windows 8 находится в новом режиме «подключенного ожидания». Что он не может ответить, так это как установить таймер для выхода из этого режима. Приложения Metro могут сделать это, но как насчет настольных приложений?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]