2011-01-31 18 views
2

アンインストールすると、インストーラーはインストールされているフォルダとそのすべてのサブディレクトリを削除します。ただし、アンインストールに関していくつかのログファイルを保持する必要があります。インストーラがインストールされたフォルダを削除しないようにするにはどうすればよいですか?MSIのアンインストールですべてのフォルダを削除しない

+0

MSIの作成に何を使用していますか?ちょうどVisual Studioのセットアッププロジェクトですか? InstallShield、Wise、または何か他のサードパーティーですか? –

答えて

6

ログファイルを%APPDATA%のフォルダに保存することをお勧めします。は、インストーラではなくアプリケーションが必要なときに作成されます。インストーラによってフォルダが作成されないため、インストーラがフォルダを削除するという問題が解決されます。

また、言及する価値だとインストーラは、アプリケーションの%PROGRAMFILES%の下のフォルダを作成しているし、あなたが間違ったことをやっているそれが正しい場所ではないのですと、あなたは、そこにログファイルを維持している場合店舗ログデータ理由:PROGRAMFILES%は

  • % APPDATA%はログなどのものを格納するための「正しい」場所(!それはすべての名前でだ=)
  • ある標準ユーザーの書き込み権限がありません

    • %
    0

    この時点でフォルダにファイルを書き込んだら、またはディレクトリが削除されたとみなしただけで、それが新しいファイルなしで削除されたと仮定します。私の経験から、MSIは空ではないフォルダを削除しません。そのため、MSIは独自のファイルを削除しますが、ログファイルはそこに格納されるため、ディレクトリは削除されません。

    @Robに同意しますが、これはログファイルを書き込むのに最適な場所ではありません。

    関連する問題