web-dev-qa-db-ja.com

Windowsインストーラー向けの無料ソフトウェア:NSIS対WiX?

ソフトウェアをインストールするためのソフトウェアパッケージを選択する必要があります。 NSISとWiXは有望なようです。どちらをお勧めしますか、またその理由は何ですか。

この2つよりも優れていると思われる場合は、他のサービスを提供してください。

65
John Smith

インストーラーを実行したい場合今日で、最小限のオーバーヘッドでNSISを使用します。シンプルなスクリプト言語、優れたドキュメント、高速。

MSIファイルを構築し、Windowsインストーラーのトランザクションシステムと統合し、Windowsインストーラーで使用される宣言型モデルの学習に専念する時間がある場合は、WiXをチェックしてください。

76
Shog9

また、多分 Inno Setup を試してみてください。確かに、Pascalでカスタムコードを記述せざるを得ないので、少し奇妙に思えるかもしれませんが、カスタムコードを実際に実行しなければならないことはほとんどありません。InnoSetupは本当に強力です。

Inno Setupは [〜#〜] exe [〜#〜] インストーラーも生成します-アプリケーションをエンタープライズ環境に簡単にデプロイできるようにしたい場合、個人的にはWiXルートに移動する必要があります、私はユーザーとしてMSIに関連する問題のかなりの部分を共有してきました。個人的にはMSIが遅くて恐ろしい死を迎えることを好むでしょう(まあ、実際には、この時点では素早い死が好ましいでしょうが、恐ろしいことかもしれません)。なので、先に進んでEXEファイルを実行します。

そう。

  • [〜#〜] nsis [〜#〜]:新しい言語を学ぶ必要があります。 EXEインストーラーを作成します。
  • WiX:宣言的なセットアップの作成ですが、少し低レベルです。確かに、基本的なMSIの知識が必要ですが、簡単なチュートリアルが一般的に不足しているため、習得が非常に難しいと感じています。
  • Inno Setup:非常に強力なEXEインストーラーを簡単な、主に.INIファイルベースの構文で作成できますが、Pascalを習得する必要があります。カスタムコーディングが必要です。

長い間 Delphi コーダーとして、私は常にInno Setupに行きますが、それはおそらく非常に偏見があります(私は1996年頃からInno Setupファンです)。

38
pilif

これは* Windowsインストーラーを構築するための最良の選択肢は何ですか の複製です。そのため、あちこちにある多くの答えを確認することをお勧めします(そこにも商用の選択肢についての議論があります)。

あなた自身に尋ねる必要がある質問は、次のとおりです。SMS/ Active Directory 展開の企業展開シナリオと互換性がある必要がありますか?答えが「はい」の場合、 MSIの基礎を学ぶ です。

本当に楽しいアプリケーション、または企業環境でサポートする必要のないアプリケーションを出荷したい場合で、速度を上げるために多くの時間を費やしたくない場合は、NSISについて学習してください。

14
saschabeaumont

NSISはexe、WiXはMSIを提供します。

NSISを使用して、いくつかのMSIインストーラーを単一のexeにパッケージ化し、VS.NETセットアッププロジェクトを使用する方法がわからなかった追加のチェックをいくつか実行しました。

INNO Setupは、別のインストーラーでもあります。 WiXよりNSISに近いですが、インストーラーはNSISインストーラーよりも標準のインストーラーのように見えます。

インストーラーのビルドに使用されるXML定義言語が気に入らなかったためWiXを使用しませんでした。また、他の依存MSIのパッケージ化をサポートしているかどうかがわかりませんでした。

3つのうち、私はそれが最高のドキュメントを持っていたので、NSISが最も好きでした。

10
Darryl Braaten

私は仕事でNSISを使用し(私はそれを持ち込んで、古いInstalShieldのものを変換しました)、それが好きです。

他のオプションについて話すことはできませんが、NSISはより複雑なインストーラーフローのためにトリッキーになる可能性があり、スクリプト言語はより詳細な種類(ハイレベル言語よりもアセンブラーのようなもの)の生のようなものです。

6
crashmstr

個人的に私はWiXだけを試しました。学習曲線は少し急ですが(NiceのグラフィカルUIを見つけられない限り)、NSISが(私が信じているように)カスタムEXEではなくWindowsインストーラー形式(MSI)を使用しているため、最終的には成果が出るはずです。 。 WiX/MSIの宣言型アプローチは、今日では一般的に支持されており、より信頼性が高いと考えられています。ただし、迅速かつ簡単なソリューションが必要な場合は、多くのサンプルと優れたサポートベースが必要であるため、NSISが選択肢となる場合があります(個人的には、そのようなものにはVisual Studioセットアップパッケージを使用するだけです)。 このブログ投稿 は、問題についてかなりよく議論しているようです。

4
Noldorin

私はNSISを使用しました。他の人にはコメントできませんが、客観的な決定を下すのに役立つコメントがかなりあると思います(まだの場合)。 HMNSISソフトウェアは、単純なアプリケーション用の単純なインストーラーを作成するのに最適です。ウィザードが組み込まれており、IDE NSISには最適です。

また、これはかなりよく文書化されたフリーソフトウェアであることにも同意します。しかし、先ほど言ったように、他には何も必要ないため(NSISが好きなので)比較できません。

1
Daniel Casserly

InstallJammer をご覧ください。無料であるだけでなく、クロスプラットフォームで非常に使いやすいです。ほとんどの一般的なアクションはスクリプトをまったく必要としませんが、内部に強力なスクリプト言語を使用することで、インストールに必要なほとんどすべてのことを実行させることができます。

必要なのは、アプリケーションをインストールするための基本的なインストーラーだけであれば、最初に起動してから数分でビルドすることができます。より強力なものが必要な場合は、機能とドキュメントが優れています。

0
Damon Courtney