Каждое устройство будет иметь собственный драйвер для подсветки, к которому, вероятно, обращаются вызовы DeviceIoControl. На устройствах CE, с которыми я работал, эти API не включают подсветку, но контролируют время ожидания и настройки интенсивности. Вероятно, вы можете использовать API-интерфейсы SetDevicePower () или SetPowerRequirement (), хотя я никогда не использовал их.
Я использовал событие «PowerManager / ActivityTimer / UserActivity» для включения подсветки. Я считаю, что CE устанавливает то же самое событие из-за активности мыши и клавиатуры. Я безуспешно пытался обнаружить активность, ожидая этого события, но проблема в том, что нет гарантии, что ваш поток будет запланирован, когда он будет установлен. Затем вы должны переустановить событие, чтобы запустить нормальное поведение системы.
Вы можете фиксировать активность клавиатуры SetWindowHookEx, см. http://www.codeproject.com/KB/windows/wincekbhook.aspx. Также на сайте проекта кода есть статьи на C #. Примечание: на устройствах CE, которые я использовал, можно установить только один хук, хотя на WM я этого не нашел.
Я подозреваю, что вы могли бы также отслеживать ввод мыши, я не знаю, как.