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

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

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

Re[3]: インストール後に頻繁にインストーラ?のダイアログが表示される


(過去ログ 94 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■55904 / inTopicNo.1)  インストール後に頻繁にインストーラ?のダイアログが表示される
  
□投稿者/ まさし (4回)-(2010/12/17(Fri) 17:43:32)

分類:[インストーラ全般] 

度々お世話になっております。
InstallShield2010でインストーラを作成しています。開発したアプリをインストールしたところ
以下のメッセージのダイアログがコンテキストメニュー(右クリック)表示時に頻繁に表示される
ようになりました。このダイアログを表示させない方法、インストーラの設定方法をご存知の方が
いましたらご教授お願いできないでしょうか?

--------------------------------------------------------------------------------------
「WindowsにXXXXXXXXXを設定しています。しばらくお待ちください。」

「選択した機能は現在使用できないネットワークリソースにあります。
[OK]っをクリックして再実行するか、インストールパッケージ'XXXXXXXXXX.msi'を含む
フォルダに対する代替パスを以下のボックスに入力します。」
※エディットボックスの中身
C:\DOCUME~1\XXXXX\LOCALS~1\Temp\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}\
--------------------------------------------------------------------------------------


開発したソフトは以下の処理を行っています。
・コンテキストメニューのによる指定モジュールの実行
・ファイルの自動アップデート

こちらで調べてみたところ、ファイルのアップデートを行った後に上記のダイアログが表示
されるようになるみたいです。Windows側でインストールファイルとアップデートしたファイルに差分が
あった場合、ファイルの破損とみなして復元のための再度インストールパッケージを要求しているので
しょうか?

引用返信 編集キー/
■55950 / inTopicNo.2)  Re[1]: インストール後に頻繁にインストーラ?のダイアログが表示される
□投稿者/ まさし (6回)-(2010/12/20(Mon) 13:00:04)
質問を上げさせていただます。
引用返信 編集キー/
■55954 / inTopicNo.3)  Re[1]: インストール後に頻繁にインストーラ?のダイアログが表示される
□投稿者/ とっちゃん (556回)-(2010/12/20(Mon) 16:23:19)
とっちゃん さんの Web サイト
No55904 (まさし さん) に返信
> こちらで調べてみたところ、ファイルのアップデートを行った後に上記のダイアログが表示
> されるようになるみたいです。Windows側でインストールファイルとアップデートしたファイルに差分が
> あった場合、ファイルの破損とみなして復元のための再度インストールパッケージを要求しているので
> しょうか?
>

アップデートはどのように行っていますか?
どのような理由があるかはわかりませんが、何らかの理由で WindowsInstaller的に
修復が必要と判断されてしまい、自動修復が行われているのだと思います。

ファイルの修復については。。。
http://blogs.wankuma.com/tocchann/archive/2010/09/28/193304.aspx
http://blogs.wankuma.com/tocchann/archive/2010/09/29/193329.aspx
の二つでもちょっとした解説を入れてあります。

必ずしもここに書かれていることにマッチングするとは言えませんが、参考にはなると思うので
もしまだ目を通していないようであれば、一度目を通してみてください。

引用返信 編集キー/
■55961 / inTopicNo.4)  Re[2]: インストール後に頻繁にインストーラ?のダイアログが表示される
□投稿者/ まさし (8回)-(2010/12/20(Mon) 22:02:50)
返信ありがとうございます。
解説サイトを一読させていただきました。

アップデートは自作のアプリで行っています。サーバーとの通信でローカルのファイルと差分があれば、ファイルを
ダウンロード、上書きを行う作りです。これが WindowsInstaller側で修復必要と判断されているのだと思います。
さらに、コンテキストメニューに追加しているため、右クリックCOMオブジェクトのロードがトリガーとなって、
修復画面が表示されるのだと思っています。

WindowsInstallerの自己修復機能が動作しているみたいですよね。
市販のソフトでInstallShield(msi)のインストーラを使用していて、ファイルの最新版をネット経由でアップデート
しているものをよく見かけますがどのようにしているのでしょうか?

私の方で試してみたこと(InstallShieldで)
・[編成]-[セットアップのデザイン] アドバタイズ:アドバタイズを許可しない
結果:× アップデート後、WindowsInstallerの修復画面が出る
・[アプリケーションデータ]-[ファイルとフォルダ] : 全ファイルをキーファイルの設定をクリアする
 参考:http://ja.wikipedia.org/wiki/Microsoft_Windows_Installer
     結果:? 今現在テスト中ですが、修復画面は表示されない。
 ただ、InstallShield側の機能でサービス、コンポーネント登録のコンポーネントウィザードが使用できない。
 Windowsサービスの登録が、インストーラ上で出来ない・・・。InstallShieldを使っている意味がないのでこの方法は避けたい

長文で申し訳ありませんが、切羽詰まっています。
ご教授お願いできれば幸いです。

引用返信 編集キー/
■56047 / inTopicNo.5)  Re[3]: インストール後に頻繁にインストーラ?のダイアログが表示される
□投稿者/ shu (320回)-(2010/12/24(Fri) 08:45:59)
No55961 (まさし さん) に返信

こんなページがありましたのでリンク載せておきます
http://blogs.wankuma.com/tocchann/archive/2008/01/07/116278.aspx

予想:ファイルの厳密なバージョンを指定してあるため更新されるとファイルバージョンが
変わるので修復が走ってしまうのではないか?
引用返信 編集キー/
■56060 / inTopicNo.6)  Re[3]: インストール後に頻繁にインストーラ?のダイアログが表示される
□投稿者/ とっちゃん (557回)-(2010/12/24(Fri) 21:35:26)
とっちゃん さんの Web サイト
No55961 (まさし さん) に返信

> WindowsInstallerの自己修復機能が動作しているみたいですよね。
> 市販のソフトでInstallShield(msi)のインストーラを使用していて、ファイルの最新版をネット経由でアップデート
> しているものをよく見かけますがどのようにしているのでしょうか?
>
アップデータとして、パッチ(msp)を作成している場合がほとんどですね。
で、パッチでアップデータを提供していれば今回のような問題は発生しません。

パッチについては、InstallShieldのヘルプをまずは読んでみてください。



> 私の方で試してみたこと(InstallShieldで)
> ・[編成]-[セットアップのデザイン] アドバタイズ:アドバタイズを許可しない
> 結果:× アップデート後、WindowsInstallerの修復画面が出る
アドバタイズは、初回実行時にインストールするというオプション(オンデマンドインストールともいう)の仕組みなので
今回の件とは関係ありません。ちなみに、ショートカットのアドバタイズショートカットも同様です。

> ・[アプリケーションデータ]-[ファイルとフォルダ] : 全ファイルをキーファイルの設定をクリアする
>  参考:http://ja.wikipedia.org/wiki/Microsoft_Windows_Installer
>      結果:? 今現在テスト中ですが、修復画面は表示されない。
>  ただ、InstallShield側の機能でサービス、コンポーネント登録のコンポーネントウィザードが使用できない。
>  Windowsサービスの登録が、インストーラ上で出来ない・・・。InstallShieldを使っている意味がないのでこの方法は避けたい
>
キーファイルをなくすと、コンポーネントの確認手段がフォルダとなるため、自動修復はほとんどの状況で発生しなくなります。
その代わり、キーパスがあることを前提とする部分がすべて破たんするため、どこでおかしなことになるのか予測がつかなくなります。


状況的に自動修復ということのようですので、まずは
http://msdn.microsoft.com/en-us/library/aa368599(VS.85).aspx
のファイルの更新ルールをお読みください。
英語ですが、ここに書かれていることがすべてです。

日本語はISの書籍(InstallShield公認ガイドブック)があります。私のブログにリンク貼ってあるので
参考にしてください(踏まなくて構わんですよw)。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -