Pianificazione di Windows Mobile per eseguire
-
09-06-2019 - |
Domanda
Come si fa a programmare una applicazione Windows Mobile periodicamente avvio per eseguire l'elaborazione in background.Per esempio, supponiamo che io sto scrivendo un e-mail client e si desidera controllare la posta ogni ora, indipendentemente dal fatto che la mia app è in esecuzione al momento.
L'app è un C/C++ nativo app su Windows Mobile 5.0 o versioni successive.
Soluzione
la funzione di cui hai bisogno è:
CeRunAppAtTime( appname, time )
che non è l'esatta firma, c'è anche CeRunAppAtEvent
, essi dovrebbero essere in MSDN docs (ma il collegamento è inutile il modo di MSDN url cambiare sempre)
Per il normale utilizzo di questi (e RunAppAtTime
nel mondo gestito via OpenNETCF.Win32.Notify
) è che per l'esecuzione periodica, ogni volta che la vostra applicazione è in esecuzione, verrà rescedule stesso per la sua successiva esecuzione.
Se l'applicazione è in esecuzione, la nuova istanza che dovrebbe portare il processo già in esecuzione.Se non è in esecuzione, quindi è proprio come l'avvio normalmente da mmory passa qualche argomento per il processo in modo che possiamo dire che è stato pianificato e non ha iniziato da qualche altro modo.
Altri suggerimenti
Utilizzare CeSetUserNotificationEx invece di CeRunAppAtTime (come questo è deprecato).