久しくインストーラネタをあげていないので、再開です。いままで一度も書いたことがないので、ツール類なんかを紹介しておきましょう。
第1回は、インストーラ作成ツールの紹介。おいらの知るものだけなので、ほかにもあるとは思いますが、それは無視ということで<おい!
最初は市販の3大ツール。とはいえ、日本語版が出てるのは、1個だけになってしまいましたけど。
まずは、InstallShield。日本でインストーラ作成ツールといえば、InstallShield と言っても過言ではないくらい、普及しています。一説には90%以上とも言われるほどです。世界的に見ても普及率は高いですが、さすがにここまで寡占状態は進んでいません。単独製品として日本語版で出ているものでは唯一のものとなっています。
ちなみに、最新版は InstallShield 2008。このバージョンからバージョン表記ではなく年号になりました。
ま、半年よりは提供タイミングが長くなるということなんでしょうけど...
続いて InstallStudio。以前は Wise for Windows だったものです。Grape City でローカライズバージョンが販売されていましたが、残念ながら 2007/03/31 に販売終了になってしまいました。
ちなみに、以前ちらっと聞いたんですが、やっぱり日本語版の継続は難しいと言ってました。まぁあまりにもな状況なので、ある意味仕方ない面はあるのかもしれませんね。
最後は、InstallAware。多分これはいままで一度も日本で販売されたことはないのではないかと思います。最近手広くやっているのか、いろいろと出てきてますね。メーカーとしては要注目なところなんですが、日本じゃさっぱり(CodeGearで初上陸かも)なので、注目度は高くありません。最近、エンジンに WiX を使う WixAware というのを出しています(MSDN Magagineでも出てますね)
続いては、開発環境添付のもの。
まずは、Visual Sutido のセットアッププロジェクト。こちらは、MS独自のビルドエンジンを使ったものとなっています。前身の Visual Studio Installer(VSI) となにが違うか?というとエンジンの対応バージョンが違っています。VSI は、msi 1.1 用なので、WindowsInstaller としては過去の遺物といえます。9x 系ですら、2.0 が最低(すでにサポートは終わっていますけど)ですし、NT 系でいえば、3.1(2003まで)または 4.0(Vista以降)となっていますので、今となっては使う価値は全くないと言っても過言ではないでしょう。
ま、パッチが作成できないとか、Vista だとUIの情報が渡せないとか、探すとボロボロだったりするんですが、その辺は Orcas あたりで改善されていることに期待したいところです。
続いてはもう一つの開発環境の雄であるBorlandCodeGearの C++Builder。ほかのにもついてるかもしれませんが。とはいえ、なんにも開発環境を持っていないので、先日見かけて、へぇ。。。というものでしかないのですが。InstallAware の独自ローカライズ版が搭載されているそうです。Express 版なのでどこまでできるかわかりませんけど。
最後は、オープンソースから。
こちらは、Windows Intaller XML(WiX) toolset のみですね。MS の元WindowsInstaller チームの開発者がアフターファイブプロジェクトで開発しているツールです。ここでもなにかと話題に上げているので知ってる人もいるかと思います。
特徴は、「オープンソースであること」ではなくて「コマンドラインツールであること」です。ほかの製品はすべてGUIツールなのに対し、これだけはコマンドラインで構成されています。余計なガワがない分、融通が効くというのが最大の特徴と言えるでしょう。プロジェクト管理などを C# や C++ のようにVSで行ったりすることができるようになっています(VS用のアドインもありますが、Express では使えません)。もちろん、MS-Build を利用したり、NAnt を使うことも可能です。Native C++ だ!とか2005 なんか持ってねーよ。という場合でも、MAKE ツールさえあれば、コマンドライン呼び出しでさっくりビルドできます。
それこそ、数千~数万というプロジェクトでも。
ちなみに、ビルドエンジンにWiX を利用しているものには、前出の WixAware のほかに SharpDevelop などのツールもあります。また、WixEdit という専用のツールもあります。こちらはいずれも、WiX 本体とは異なり、GUIツールとなっていますので、これから触る人にとっては比較的導入しやすい選択肢ではないかと思われます。難点は、全部英語版ということですかね。SharpDevelp もいつのまにか日本語プロジェクトなくなってるみたいだし...