Элегантный Win CE 5 отключение при отключении питания - PullRequest
0 голосов
/ 25 января 2012

У меня есть аппаратное устройство под управлением WinCE 5.

Наше приложение в компактной оболочке.

Устройство подключено к источнику питания с выключателем питания.

Наше приложение получает сигнал, когда переключатель питания находится в положении OFF.Это позволяет нам элегантно завершить нашу работу, закрыть наши потоки и выключить устройство.

В настоящее время наша процедура выключения также включает в себя отключение карты SDIO, чтобы убедиться, что она не повреждена.

Мы НЕ называем какие-либо окна api как часть окончательного завершения работы.Мы можем сигнализировать нашему силовому микро «, что все в порядке, оно действительно может отнять энергию сейчас», что и делает.

Наша главная цель - предотвратить коррупцию любого рода.Например, реестр Windows находится не на SDIO-карте, а на внутреннем диске.Насколько я знаю, мы не видели этого точно, но это вызывает беспокойство.

Мой вопрос:

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

Спасибо.

1 Ответ

3 голосов
/ 25 января 2012

Вы должны вызвать API приостановки (например, GwesPowerOffSystem()) и позволить менеджеру питания выполнить свою работу, вызывая каждого из драйверов через их точки входа диспетчера питания.Я бы даже сказал, что, если возможно, прерывание из-за потери питания должно обрабатываться драйвером, который затем запускает процесс приостановки.

...