0

新しいバージョンが利用可能かどうかを確認するために、Web サイトをチェックするプログラムを開発しました。新しいバージョンが利用可能になると、ダウンロード プログラムが起動してファイルを取得し、そのフォルダ全体をソースの上にコピーして、新しいバージョンでプログラムを再起動します。

問題は、プログラムを 2 回目に実行したときに、ソフトウェアが実際には更新されていないことです。つまり、ダウンロードしてコピーしたばかりのファイルが元のバージョンに戻っています。

それを防ぐ方法はありますか?通常、.NET 2008 の Setup および Deployment プロジェクトを使用して、アプリケーション インストーラーをビルドします。

4

1 に答える 1

0

更新されるバイナリ ファイルがインストールの重要なファイルではないことを確認する必要があると思います。デフォルトでは、すべてのバイナリ ファイルがキー ファイルです。これにより、基本的に、インストール内の各ファイルに対して一意のレジストリ エントリが作成されます。Windows はこれらのファイルを監視し、ファイルのいずれかが削除または変更されると、キャッシュされたファイルのコピーをコピーします。

deploy プロジェクトからキー化されていないバイナリ ファイルを作成する方法がわかりません。これは、Installshield プロジェクトのファイルごとのオプションです。

インストーラーを使用してスタブ (アプリケーションのエントリ ポイント) をインストールし、残りの依存関係を xcopy する場合、範囲外に変更された場合、Windows インストーラーはインストールを修復しません。

于 2009-12-18T16:20:27.127 に答える