インストーラの自動修復機能をOFFにするには?


腰痛太郎  2008-08-02 01:22:10  No: 145034

板をお借りして質問させていただきます。

VisualStudio2005 / VB.NET で Windows アプリのインストーラを作成しているのですが、
下記のような現象が発生し困っています。

①インストーラ (msi) を作成し、アプリをインストールします。このとき、
インストール先のディレクトリに aaa.exe と bbb.ini がインストールされます。
デスクトップ上に aaa.exe へのショートカットが作成されます。

②bbb.ini を手動で削除します。

③デスクトップ上にある aaa.exe へのショートカットを実行する。

④インストーラが起動し、自動的に bbb.ini が再度インストールされた後、アプリケーションが起動する。
この時、インストーラが見つからない場合、インストーラの場所を指定するダイアログが開く。

といった現象です。
③のところでショートカットではなく、インストール先のディレクトリにある aaa.exe を直接起動すると、
④のような現象は発生しません。

いろいろネット上で検索して
http://dobon.net/vb/dotnet/deployment/disableadvtshortcuts.html
等を参考にして、

msiexec /i (MSIファイル名) DISABLEADVTSHORTCUTS=1

等試したのですが、現象は同じでした。

この現象を回避する方法をご存知の方がおられましたら、ご教授いただけないでしょうか?
よろしくお願い致します。


シャノン  2008-08-02 19:32:38  No: 145035

インストーラに bbb.ini を含めなければ良いのではないですか?
削除しても大丈夫な作りになっているのなら、インストール時からある必要はないのでは?


腰痛太郎  2008-08-04 18:29:32  No: 145036

シャノンさん、お返事ありがとうございます。
説明不足で申し訳ありません。
仕様で、aaa.exe は常に起動時に bbb.ini を読込むようになっており
bbb.ini は必須ファイルとなっています。
ユーザが手動で bbb.ini 等誤って削除した場合に 
aaa.exe 起動時にメッセージを表示して
ユーザに通知するという仕様になっているのですが
テスト中に上記現象が発覚しました。
どうやら現象としては
bbb.ini でなくても、たとえば readme.txt とかでも
インストーラがインストールしたファイルであれば
削除すると自動修復インストールをしようとする模様です。


シャノン  2008-08-04 18:55:11  No: 145037

インストール先が C:\Program Files 等であれば、一般のユーザには手出しできないように権限が設定されていますので、消される心配はありません。
ユーザが常に Administrator 権限でログインしてるようだと消されちゃいますけど、それは運用がおかしいんであって、プログラム側で気を使うことではありません。
加えて、bbb.ini が消される心配をするんであれば、aaa.exe が消される可能性も同じようにあるわけですが、その場合はどう対処するんでしょうか?
また、bbb.ini がもし消された場合、ユーザーにメッセージを表示するとありますが、どういうメッセージを出して、ユーザーにどう対処させるつもりなのでしょうか?


腰痛太郎  2008-08-04 19:15:48  No: 145038

シャノンさん、お返事ありがとうございます。
仕様・運用上のご指摘に関してはごもっともかと思います。
回避方法が見つからない場合、ご指摘の通りプログラムの責任範囲外ということで
仕様的な交渉をすることになるかと思いますが、
現時点では上記のインストーラの現象を回避する方法があればと策を模索している段階です。


シャノン  2008-08-04 19:43:52  No: 145039

まぁ、無茶な要求というのはよくあることです。
心中お察しします。

msiに詳しい人が集まっているメーリングリストをご紹介します。
こちらで相談した方が早いかもしれません。
http://www.freeml.com/msi


腰痛太郎  2008-08-04 20:04:28  No: 145040

シャノンさん、お返事ありがとうございます。
メーリングリスト情報ありがとうございました。
参考にさせて頂きます。
インストーラを1から作るのは今回が初めてなのですが、今回の作業を機にいろいろ勉強してみようかと思っています。
解決策が見つかれば、こちらの掲示板でもご報告したいと思います。


シャノン  2008-08-04 20:08:31  No: 145041

頑張ってください。
申し訳ありませんが、俺はこれ以上は力になれそうにありません。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加