質問

Windows Mobile アプリケーションが定期的に起動してバックグラウンド処理を実行するようにスケジュールするにはどうすればよいですか。たとえば、電子メール クライアントを作成していて、その時点でアプリが実行されているかどうかに関係なく、電子メールを 1 時間ごとにチェックしたいとします。

このアプリは、Windows Mobile 5.0 以降のネイティブ C/C++ アプリです。

役に立ちましたか?

解決

必要な関数は次のとおりです。

CeRunAppAtTime( appname, time )

それは正確な署名ではありません。 CeRunAppAtEvent, 、両方とも MSDN ドキュメントに記載されている必要があります (ただし、MSDN URL は常に変更されるため、リンクは役に立ちません)。

これらの通常の使用方法 (および RunAppAtTime 管理された世界で OpenNETCF.Win32.Notify ) 定期的に実行する場合、アプリが実行されるたびに、次回の実行時にスケジュールが再設定されます。

アプリが実行中の場合、新しいインスタンスはすでに実行中のプロセスを起動する必要があります。実行中でない場合は、通常の起動と同じです。mmory からプロセスに引数を渡すことで、プロセスがスケジュールされており、他の方法で起動されていないことがわかります。

他のヒント

CeRunAppAtTime の代わりに CeSetUserNotificationEx を使用してください (これは非推奨のため)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top