web-dev-qa-db-ja.com

NSISスクリプトをMSIパッケージとしてビルドする

Nullsoftインストーラスクリプト(NSI)セットアップをEXEではなくMSIパッケージとしてコンパイルする方法はありますか?

32
NumberFour

残念だけど違う。

[〜#〜] nsis [〜#〜] スクリプト化可能な手続き型インストールパッケージを作成できます。シンプルで使いやすく、Windowsインストーラにはない多くの機能があります。

Windowsインストーラー (MSI)は、データベース駆動型のトランザクションインストールパッケージを作成します。適切に記述されている場合、Windowsインストーラパッケージは非常に堅牢であり、ファイルが破損/削除され、自動的に再インストールされます。 WindowsインストーラーはUACを認識しており、必要な場合にのみ昇格します。基本的に、企業市場向けのソフトウェアを作成している場合は、MSIを提供する必要があります。

MSIを理解するための良い入門書として、 Windowsインストーラーの決定版ガイド を確認してください。

27
saschabeaumont

NSISインストーラーは、MSIラッパーを使用してMSIファイルでラップできます。これは、NSISおよびInnoSetupインストーラーをラップするために作成した小さなツールです。 WiXを使用してMSIをコンパイルしますが、XMLファイルの代わりにGUIがあります。

これは、従来のEXEインストーラーに基づいてMSIファイルを作成するためのツールが必要だったために作成されました。アンインストールとアップグレードのサポートが必要で、ラップされたインストーラーがコントロールパネルの[プログラムの追加と削除]に一度だけ表示されるようにしたかったのです。

また、MSIのインストール時に、ラップされたインストーラーにコマンドラインパラメーターを渡せるようにしたかったのです。

あなたがそれを使用したい、または私がそれを改善するのを手伝いたいなら、あなたはそれを http://www.exemsi.com で見つけることができます。

実行可能インストーラーをMSIパッケージでラップすることは理想的なソリューションではないという意見を共有します。ただし、すでにexeファイルがある場合は、多くの意味があります:-)

17
Jacob

いいえ(.MSI出力をサポートする予定はありません)、試してください [〜#〜] wix [〜#〜]

13
Anders