MSDN Libraryのインストールに何度も失敗したあげく、やっと解決方法がわかったので、書き記しておきます。
- リモート管理(Terminal Service)から実行すると失敗する
- インストールが途中で失敗して、イベントビューアにイベントソース:MsiInstall、イベントID:11708と記録される
この二種類の現象に遭遇しました。
1.リモート管理(Terminal Service)から実行すると失敗する
私の手元では
MSDN Libraryの管理者インストール(サーバにコンテンツを全部転送する)を実行した場合のみ発生しています。通常、サーバのローカルにインストールする場合であれば、
Windows Installerが警告(コントロールパネルの「プログラムの追加」から実行してください)を出すか、そのまま実行してくれます。
ただし、管理者インストールの場合、リモート管理のセッションから実行すると必ず失敗しました。結局サーバのコンソールから、ローカルログオンして、管理者セットアップ(付属のnetcopyコマンドでコピー先を指定)を実行することにより、
インストーラの起動ができました。
2.
インストーラーが実行中に突然終了する。
ローカルログオンしてインストールしている最中にもかかわらず、
インストーラーが突然
ロールバックして、終了するという現象が発生しました(
Windows XPの場合)。
イベントソース:MsiInstaller
イベントID:11708
調べてみると、これはインストール先(ネットワークサーバの共有ディレクトリへのコピー)への一部権限がないためのようです。もちろんインストールしているユーザでは読み書きフルコントロール何でもできる状態なのですが、
Windows Installerはサービスなので、このサービスに対して権限がない場合失敗すると言うことのようです。
対処としては、コピー先フォルダのNTFSセキュリティを変更します。
- Everyoneグループを追加
- 「読み取り」「読み取りと実行」「フォルダの内容の一覧表示」にチェックが入っていることを確認する(Everyoneを追加した時点で入ります)
これで再度netcopyコマンドを実行すれば正常にセットアップが実行されます。他社さんでもリモートセットアップを行うときにしばしば発生する問題のようで、Citrixのサイトでも情報が公開されていました。
参考:
イベントID 11708および「エラーが発生したため、インストールが中断されました」というエラーメッセージが表示される
EventID.Netでの11708のやりとり