Планирование запуска приложений Windows Mobile

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

Приложение представляет собой собственное приложение C / C ++ для Windows Mobile 5.0 или более поздней версии.


person Tim Norman    schedule 07.09.2008    source источник


Ответы (2)


вам нужна следующая функция:

CeRunAppAtTime( appname, time )

это не точная подпись, есть также CeRunAppAtEvent, они оба должны быть в документах MSDN (но связывание бесполезно, так как URL-адреса MSDN всегда меняются)

Обычный способ их использования (и RunAppAtTime в управляемом мире через OpenNETCF.Win32.Notify) заключается в том, что для периодического выполнения каждый раз, когда ваше приложение запускается, оно будет перенастраивать себя для следующего выполнения.

Если ваше приложение запущено, новый экземпляр должен вызвать уже запущенный процесс. Если он не запущен, то это похоже на обычный запуск - из mmory он передает некоторый аргумент процессу, чтобы он мог сказать, что он запланирован, а не запущен каким-либо другим способом.

person quick_dry    schedule 07.09.2008
comment
CeRunAppAtTime устарел - посмотрите заголовок notify.h, где он определен. Лучше использовать вместо этого CeSetUserNotificationEx. - person Sam; 20.01.2010

Используйте CeSetUserNotificationEx вместо CeRunAppAtTime (поскольку это устарело).

person Steven    schedule 13.11.2008