アップグレードインストーラ作成記(3)

前回で、インストーラの基本的な作成手順を取り上げてみた。今回は、インストーラファイルを編集し、細かな設定変更を可能にする手順を取り上げてみる。このためには、Windows Platform SDKのインストールやOrcaデータベースエディタのインストールが必要になる。たかがインストーラ作成に何もここまで、といった感じもするが、最善のソリューションは最後に書くつもりだ。

これらのインストールについて触れる前に、Windows Installerファイルの基本的な構造について書いておこう。Windows Installerファイルは、テーブル構造を持った一種のデータベースとなっている。アクションやプロパティの類は、すべてデータベース内部のフィールドとして保持されている。アクションを編集したり、プロパティを変更したりすると、インストーラの動作が変わる。実はVisual Studio Installerは、このデータベースファイルを設定に従って書き出しているだけである。もし知識と根気があれば、Windows Installerファイルをゼロから作成することも、論理的には可能なわけだ。

Visual Studio Installer自体の機能は限られており、Windows Installerファイルのサポートするすべてのフィールドに対応してはいない。もし、Visual Studio Installerの持たない機能を使いたければ、作成されたWindows Installerファイルを独自に編集するしかない。このためのツールが、Orcaデータベースエディタである。

Orcaデータベースエディタは、単独で入手することはできない。Windows Platform SDKの一部の機能として提供されるので、たとえWindows Platform SDKの持つ膨大な機能を必要としなくても、これをインストールしなければならない。

インストールそのものについては、このページを参照してもらい、ここでは省略する。続けて、Orcaデータベースエディタをインストールする。Orcaのインストーラは、Platform SDKのインストールされたばしょにある。たとえば、C:\Program Files\Microsoft Platform SDK\Bin\Orca.Msiとして置かれている。これをインストールすればいい。例によって、手順は省略する。

Orcaデータベースエディタを使ってみるために、ひとつ例を設定する。Visual Studio Installerで作成したインストーラでアプリケーションをインストールした場合、メニューやデスクトップのショートカットは、インストールを実行したユーザに対して作成される。これを、全ユーザが対象になるように(すなわちAll Usersに対して作成されるように)変更してみよう。Orcaデータベースエディタは、スタートメニューから起動できる。起動して、適当なWindows Installerファイルをドロップすれば、そのファイルが読み込まれる。

orca001 クリックすれば拡大されます。

非常に素っ気ない感じがして、何をしたらいいのかわからないかも知れないが、基本的には左のペインからテーブルを選択し、右のペインに表示されるプロパティを編集するだけだ。Tablesから、Propertyを選んでみよう。

orca002 クリックすれば拡大されます。

ここに、ALLUSERSというプロパティを追加し、値を1に設定すれば、全ユーザに対してショートカットを作成するインストーラに変更できる。Propertyペインで右クリックし、表示されるメニューから[Add Row…]を選択する。そして、PropertyにALLUSERS、Valueに1を設定する。

orca003 クリックすれば拡大されます。

最終行に、ALLUSERSプロパティが追加されているのを確認できる。保存すれば、ファイルに反映されるので、新しい設定のインストーラとして使用できる。

Orcaデータベースエディタは、これ以上の機能を持っているとは思わない方がいい。カスタマイズのツールとしては非常に厳しいが、基本として押さえておけば、インストーラファイルの内容を確認したり、ちょっとした変更が手軽に行える(反面、インストーラファイルを破壊してしまうという危険もある)。

今回は、Orcaデータベースエディタのインストールと、簡単な使い方について取り上げた。次回は、主題であるアップグレードインストーラについて踏み込んでみる。

コメント