C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■89765 / )  Re[3]: カスタムインストーラ MSIHANDLEのリーク
□投稿者/ とっちゃん (562回)-(2018/12/21(Fri) 13:05:22)
No89764 (ぽんすけ さん) に返信
> C:\Program Filesの下のアプリのEXEを含むフォルダ、
> またプログラム内で作成したフォルダをアンインストール時の
> カスタム動作で消そうとしていますが、消えていませんでした。
>
プログラム内で作成したフォルダというのはどこ作成したのでしょうか?
それによっても状況は変わります。


> カスタム動作のinstall, uninstall時の関数に、それぞれ
> MessageBoxを入れてみましたところ、install時には表示されますが、
> uninstall時には表示されませんでした。
>
> アンインストール処理が実行されていないということでしょうか。。。

どんな形で実装しているかわからないので、詳しいことはわかりませんが
「表示されない」ということは、少なくとも
「表示処理部分(MessageBox呼び出し場所)は実行されていない」
ということになります。


> 調査する方法があればご教示お願いします。
>
まずは、詳細ログをとってそれを詳しく調査ですね。
エラー発生個所だけじゃなく、その前後(というか前)も重要だったりします。
また、場合によってはインストール時のログと突き合せたほうがいい場合もあるかもしれません。

それ以外では、段取り自体が問題ないのか?という部分のレビューも重要ですね。

そしてそれ以上に重要なのがインストール処理全体の設計に間違いがないか?というあたり。

特にフォルダ作成がプログラム内ということなので、
「それはインストーラでクリーンナップするのか?」
という部分はかなり重要です。

プログラムの責務と、実行権限に起因する問題は解決不可能な問題も含むので
簡単な話ではありません。

アプリケーションのインストール条件とかいろいろなものを組み合わせた結果として
PerUsersにすれば解決するのでそっちに切り替えるという選択もあります。

まぁ、その場合インストーラから変更ですけど。。。

一応。。。
詳細ログにはマシン固有の情報も含まれています。
なので、不特定多数の人が見れるところ(わんくま掲示板を含む)に公開してはいけません。

返信 編集キー/


管理者用

- Child Tree -