4

私の趣味のアプリケーションの 1 つは、SQLite バックエンドを使用してアプリケーション データを保存します。アプリケーションは、ユーザーが通常の [更新を確認] ボタンをクリックできるように設定されています。このボタンは、Web サービスにクエリを実行して、更新が利用可能かどうかを確認します。そうである場合、ユーザーは「更新」ボタンをクリックし、(HTTP 経由で) 新しいデータベースをダウンロードして、アプリケーションにインストールします。ダウンロードとインストールが完了するまで、ユーザーはアプリケーションで他の操作を実行できないため、このプロセスは現在「モーダル」です。

私はアプリケーションの更新に取り組んでいます。実現したいことの 1 つは、この更新プロセスを舞台裏で実行することです。これは、Windows Update のようです。アプリケーションが起動すると、サービスが照会され、更新が利用可能な場合は自動的にダウンロードされますが、バックグラウンドで実行されるため、ユーザーは作業を続けることができます。ダウンロードが完了すると、ユーザーは更新プログラムをインストールするように求められます。

私はBITSを広範囲に調べました。このテクノロジを活用する API はこれまで見たことがありませんが、いくつかのサンプル コードを見て、それを機能させることができると信じています。

しかし、これはデータライブラリの「バックグラウンド更新」にアプローチするのに最適な方法ですか、それとも他のソリューション/アプローチがありますか?

4

3 に答える 3

8

MS Windows のみを実行していて、クライアントが BITS をサポートするのに十分な新しいバージョンのオペレーティング システムを使用している場合は、他の人が行ったり書いたりすることよりも、プラットフォームに既に組み込まれている機能を活用する必要があります。自分のバックグラウンド更新チェッカーがタスクバーの通知領域にあり、システム リソースを不必要に使用しています。

BITSに関する情報については、次のとおりです。

BITSについて

BITS リファレンス

バックグラウンド インテリジェント転送サービス、ウィキペディアより

于 2008-11-19T19:03:44.350 に答える
0

これは、BITS ではなくSync Framework http://msdn.microsoft.com/en-us/sync/bb736753.aspxを検討する必要があるように感じます。

于 2012-06-18T12:07:59.637 に答える