技術解説 DLL Hellを解消する新しいWindowsインストーラとアセンブリ コラム:Windows Installerの概要Peter Pawlak2003/03/13 Copyright(C) 2003, Redmond Communications Inc. and Mediaselect Inc. |
Windows Installerはインストール・エンジンのほか、アプリケーション・ファイルを格納したコンポーネントやインストール方法に関する具体的な命令を格納したコンポーネントなどで構成される。
Windows Installerのサービス
Windows Installerエンジンは、インストールに関連するほとんどすべてのタスクを実行するバックグラウンド・サービスだ。例えば、ハードディスクへのファイルのコピー、レジストリの修正、メニュー・ショートカットやデスクトップ・ショートカットの作成、ユーザーとのやりとりなどが含まれる。Windows Installerがサポートしていない操作がある場合、インストールの一部を別のセットアップ・プロセスに引き渡すことができる。
Windows Installerサービスはシステム特権で動作するため、ローカル・システムに完全にアクセスできる。ただしデフォルトでは、こうした高度な特権を利用するのは、グループポリシー・ベースのソフト割り当てにより配布されたアプリケーションをインストールする場合か、Systems Management Server(SMS)クライアントなどのローカル・ソフト配布エージェントによって指示された場合のみとなる。それ以外は、セットアップを起動したユーザーの特権レベルで実行する。これにより、通常のユーザーが管理コンピュータにアプリケーションをインストールすることを防止できる。
Installerパッケージ
Installerパッケージは、.msi拡張子を持つファイルと圧縮されたキャビネット(CAB)ファイルで構成される(CABファイルはオプション)。MSIファイルはWindows Installerサービスにプログラムのインストール(あるいはアンインストール)方法を伝えるために必要な、あらゆる規則とデータを格納したデータベースだ。
パッケージには、実際のアプリケーション・ファイルを含めることもできるが、そうしたファイルを含む外部の.cabファイルへのポインタのみを含めることもできる。どちらにするかはパッケージの作成者次第だが、後者の場合、「どれか1つの.cabファイルでコードが変更されても、アップデートでほかの.cabファイルまで再配布する必要がない」という大きなメリットがある。
アプリケーションのセットアップ・プログラムは、想定したバージョンのWindows Installerを搭載していないWindowsでも動作しなければならない。そのため、大部分のアプリケーションにはsetup.exeが用意され、適切なバージョンのWindows Installerサービスの存在を確認したうえで、必要に応じてインストールできるようになっている。その後、Windows Installerサービスが起動し、MSIファイルの処理を実行する。
Transform
Transformは、あらかじめ決められたオプション・セットでパッケージのインストールと設定を実行できるようにするためのもので、SMSなどのツールで自動インストールを行う場合や、Windowsのグループポリシー・ベースのソフト配布機能を使ってインストールを実行する場合などに特に有効だ。
Transformは、Windows InstallerサービスがMSIテーブルをメモリにロードした直後にパッケージのデータベースに適用される変更を含むファイルだ(拡張子は.mst)。
Transformファイルを使えば、管理者はパッケージの指示を調整して、インストールの個別のニーズに対応できる(特定の部門には特殊な設定を適用するなど)。管理者や開発者は、VS.NETやInstallShieldといったWindows Installerオーサリング・ツールを使ってTransformを作成できる。またMicrosoftは一部のアプリケーションで、Transformファイルの作成を支援するウィザードを提供している(例えば、Office Resource KitではOfficeのインストールを微調整するためのウィザードが提供されている)。
パッチ
ここでいうパッチとは、アプリケーションをオリジナルのMSI情報を使って更新したり、アップグレードする作業を示す。
Windows Installerパッチ・パッケージ(拡張子は.msp)はMSIよりもシンプルで、どちらかといえばTransformに近い。パッチはオリジナルのMSIデータベースの特定のエントリを修正し、パッケージには、それに伴って変更が必要となるファイルが含まれる。
INDEX | ||
[技術解説]DLL Hellを解消する新しいWindowsインストーラとアセンブリ | ||
1.クライアント・ソフトウェアのインストールに関わる問題 | ||
2.Windows Installer 2.0の新機能 | ||
3.新しいサイド・バイ・サイド・コンポーネントのサポート | ||
コラム:アプリケーションのインストール時に何が起きているか? | ||
コラム:インストール技術の改善の歴史 | ||
コラム:Windows Installerの概要 | ||
コラム:.NETとWin32のサイド・バイ・サイド共有コンポーネント | ||
技術解説 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|
.NET管理者虎の巻
- - PR -
- - PR -