0

VD2010 Microsoft Deployment Project (MSI) の使用

私のアプリケーションには、顧客がすべてのデータを入力するために使用するデータベース (SDF) があります。アンインストールするときは、SDF ファイルが残っていることを確認する必要があります (したがって、Permanet == true を設定します)。最初の使用時にインストールする空/空白の DB でコピーを上書きしないアプリケーションのバージョン....

顧客が新しいコピーをインストールするときにすべてのデータが失われないように、これを確実にする、またはプロンプトを表示する、または何かを確保する方法はありますか?

ありがとう、

4

2 に答える 2

1

Windows インストーラーの観点から見ると、SDF は単なるバージョン管理されていないファイルです。それを独自のコンポーネントのキーファイルにし、既定のファイル バージョン管理規則を使用すると、Windows インストーラーはそれをそのように評価します。SDF の作成日と最終更新日が同じ場合、上書きされるという動作になります。作成日と最終更新日が異なる場合、上書きされません。これは、SDF ファイルの意図に基づいて、私には理にかなっているように思えます。

もう 1 つの方法は、テンプレート SDF ファイルをインストールし、アプリケーションでテンプレートを実際のデータベース ファイルにコピーすることです。このようにして、MSI はそもそも「実際の」SDF ファイルについて何も知りませんでした。認識していないユーザー データを処理することはできません。

于 2013-05-07T13:11:28.300 に答える
0

MSI インストールに sdf ファイルを含めると、sdf データベース ファイルがコピーされます。SDF の問題が発生した場合、エラーは発生しません。sdf ファイルがクラッシュしても、インストールは正常に完了します。データベースでチェックを行い、データベース エラーが発生した場合にインストールをロールバックすることができます。

于 2015-04-27T18:27:27.133 に答える