4

Winformアプリケーションをアンインストールした後も、コンテンツファイル(画像、アイコンなど)やアプリケーションが作成するログ用のフォルダーなど、さまざまなファイルやフォルダーが残ります。コンテンツファイルの場合:カスタムインストーラープロジェクトで、「Permanent」プロパティをfalseに設定しています。ログフォルダの場合:これは他のすべてのものと一緒に削除されると思いました。

欠落しているMSIセットアッププロパティがありますか、それともアプリケーションのルートパスを特定し、オーバーライドされたUninstallメソッドのすべてを削除する必要がありますか?

4

2 に答える 2

3

いいえ、ありません。MSIインストーラーは、インストールしなかったものをアンインストールしません。つまり、ユーザーデータ、ログファイルなどが残ります。

これは仕様によるものです。ユーザーが誤ってアプリをアンインストールし、すべての財務データなどを消去した場合の責任を想像できますか?または、他のものを誤ってアプリのデータフォルダーに保存し、アンインストーラーがそれらを削除した場合はどうなりますか?

于 2012-04-27T00:17:01.847 に答える
0

インストーラーは、インストーラーによってインストールされたすべてのファイルに関する情報を保持し、アンインストールが呼び出されると、この情報はインストーラーに削除するファイルまたはフォルダーを指示します。インストール後、アプリまたはユーザーがフォルダーまたはファイルを作成すると、それらのアイテムはアンインストール後もそこに残ります。

しかし、解決策があります。OnAfterUninstallここで独自のカスタムアクションを書くことができます

protected override void OnAfterUninstall(IDictionary savedState)
{
    base.OnAfterUninstall(savedState);
    // Write your code
}
于 2012-04-27T01:20:57.097 に答える