Windows Mobile 5 - обработка выхода из приложения

Я разрабатываю для Windows Mobile 5.0 и столкнулся с небольшой проблемой с моим приложением. Я использую win32 api для планирования периодического запуска процесса. Это благодаря коду, размещенному на http://www.codeproject.com/KB/mobile/WiMoPower1.aspx (вызов CeRunAppAtTime)

Однако у меня возникла проблема в том, что если я планирую запуск процесса, а приложение принудительно закрывается (например, при выходе из процесса или выключении телефона), запланированный элемент все равно выполняется.

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

Спасибо, Мэтт


person jumpingmattflash    schedule 28.09.2009    source источник


Ответы (1)


Согласно docs, если вы вызываете CeRunAppAtTime с нулевым параметром времени он удалит существующий запрос на запуск по расписанию.

person Matt    schedule 28.09.2009
comment
Да, это правильно, однако мне нужно иметь возможность выполнить эту команду после выхода из программы. На данный момент я могу сделать это только тогда, когда пользователь выходит из приложения, а не когда Windows Mobile сделает это за меня. - person jumpingmattflash; 30.09.2009
comment
Вы говорите об окнах, которые просят ваше приложение правильно закрыть или когда процесс завершается? Также вы используете компактный фреймворк или ваше приложение является родным? Когда Windows красиво просит ваше приложение выключиться, вы можете уловить это и по-прежнему удалить запланированное событие. Одним из альтернативных вариантов было бы не удалять запланированное событие, а попросить запущенное приложение проверить, запущен ли процесс первым, и, если он не запущен, ничего не делать и не планировать новое событие. - person Matt; 01.10.2009