つか、なぜにInstallShieldを使わんのか俺にはサパーリわからん。
自分で書くメリットってあるのか?
以下のまとめでは、「\mizuiroにインストール」=「\mizuiro\mizuiro.exe,...」ちう前提ね。
問題1 \mizuiro以下の、後からユーザーが追加したファイル・ディレクトリが消える
…これは確実に再現ってことでOK?
問題2 \mizuiroと同レベルにあるディレクトリが消える
d:\games\mizuiro\mizuiro.exe...
d:\games\giniro\giniro.exe..
d:\games\kiminozo\kiminozo.exe...
この場合、\games以下のディレクトリが全て消去される。
デフォルトのディレクトリだとこの症状は発生ない。
ただし、再現性にはまだ?がある。(再現しなかった例
>>214,
>>149.
>>278)
d:\nekoneko\mizuiroで、\nekonekoと同レベルにあるフォルダ(つまりドライブの全ファイル・・)
が消されたという人あり。
>>220 >>278に詳しいテスト結果。
g:\mizuiroで大丈夫だったとのこと。
>>220とは真逆の結果だね。
考察とか感想
1からすると、Uninstallerは消すべきFileの完全なリストを持っていないと思われる。
mizuiroの下のFileをFindFirstで一個ずつ消してくとか、そんな感じじゃないか?怖えぇ。
これはアンインストーラとは呼べないだろ。只のディレクトリ削除ツール。
アンインストーラは「自分で撒いたファイル以外は絶対に黙って削除しない」のが基本。
テンポラリファイルとか例外はあるけどさ。
俺としては1だけでも充分に逝ってよし、つーか糞コードだと思う。
が、回収まではしなくていいかもね、謝ればね、ちうレベル。エロゲだしね。
只、2はあまりにも酷すぎる。再現条件が特定できなくても、複数の事例が
報告されていて、それが事実と確認できればすぐ回収すべき。いますぐに。
正直、2については酷すぎる故にちょっと半信半疑なところもあるよ。
長くてスマソ。