.NET Framework再頒布可能パッケージのコマンドラインオプションここでは、.NET Framework再頒布可能パッケージ(dotnetfx.exeなど)のコマンドラインオプションを調べることを目的とします。 .NET Framework 1.1以前MSDNの「.NET Framework 1.1 の再配布」によると、Dotnetfx.exeのサイレントインストールは、 dotnetfx.exe /q:a /c:"install /l /q" というコマンドで実行されるとのことです。 このコマンドの意味するところは何なのでしょうか?まず、「dotnetfx.exe /?」コマンドにより、dotnetfx.exeのコマンドラインオプションを調べてみます。その結果、次のような説明が表示されました。
つまり、「/Q」はサイレントモードを指定し、「/T」と「/C」では「/T」で指定したフォルダにファイルを展開し、「/C:<Cmd>」では展開後に実行するコマンドを指定(製作者により指定されたインストールコマンドを上書き)できるようです。 しかしこれでは上記の「/q:a /c:"install /l /q"」というコマンドラインの「/q:a」が何を意味するかは分かりません。実はdotnetfx.exeのコマンドラインオプションはこれだけではありません。 dotnetfx.exeのプロパティを表示すると、「説明」が「IExpress Setup」となっていることが分かります。つまりこのパッケージの作成には、IExpressが使われているのです。(dotnetredist.exeなどは「説明」が「Win32 キャビネット自己展開ツール」と表示されますが、これもIExpressで作成されたことを意味します。)IExpressとはWindows 2000、Windows XPにインストールされているCab書庫を作成するためのツールで、詳しくは、DOBON.NETの「VBに適したインストーラを探そう」などをご覧ください。 IExpressパッケージに使用できるコマンドラインオプションについては、サポート技術情報の「IExpress ソフトウェア更新プログラム パッケージのコマンド ライン スイッチ」で説明されています。ここで説明されているコマンドラインオプションを以下に引用させていただきます。
これでようやくすべての意味が分かりました。「/q:a /c:"install /l /q"」は、管理者非表示モードで実行し、展開後「install /l /q」というコマンドを実行するという意味だということが分かります。 ところで、「install /l /q」の意味はなんでしょうか?早速「install /?」でinstall.exeのコマンドラインオプションを調べてみました。
これまた「/q」に対する説明に欠けていますが、これに関しては「.NET Framework Version 1.1 再配布可能パッケージ テクニカル リファレンス」で説明されています。その説明を以下に引用させていただきます。
つまり「install /l /q」では、一時フォルダにログを作成し、無人インストールモードを指定していることが分かります。 これでようやくすっきりしましたね。 補足:.NET FrameworkのLanguage Pack、langpack.exeも「IExpress Setup」ですが、内蔵されているbootstrapperは「Install.exe」ではなく、「inst.exe」です。「inst.exe /?」により表示されるオプションの説明は、次のようなものです。
.NET Framework 2.0.NET Framework 2.0の再頒布可能パッケージもほぼ上記と同様です。ただ、install.exeのコマンドラインオプションが若干異なり、"/lang"が追加されたようです。以下に"/?"コマンドを指定してinstall.exeを実行したときに表示される説明を表にします。
.NET Framework 3.0.NET Framework 3.0の再頒布可能パッケージ"dotnetfx3setup.exe"を"/?"コマンドを指定して実行したときに表示される説明を以下に示します。
.NET Framework 3.5.NET Framework 3.5の再頒布可能パッケージ"dotNetFx35setup.exe"を"/?"コマンドを指定して実行したときに表示される説明を以下に示します。詳しくは、「アプリケーション開発者向けの Microsoft .NET Framework 3.5 配置ガイド」が参考になります。
(この記事は、「.NETプログラミング研究」の第55号で紹介したものを基にしています。) |
|
Copyright 2002-2008 DOBON!. All rights reserved.
|