Nullsoft Install System

トップ > チップス > Nullsoft Install System
2012-02-13, nsis

/tips/software/nsis/index **概要 Winampで有名なNullsoftが作っているインストーラ作成システム。スクリプトファイル(.nsi)にインストール手順を定義し、そのまま右クリックでコンパイルするとインストーラ(.exe)を生成します。{link:http://nsis.sourceforge.net/Users,Firefox等の有名なプロダクトにも採用されるなど、}実力は確かなようです。

**チュートリアル Nullsoft Install Systemのサイト(以下)から、インストーラを取得し、インストールします。インストールが済むと、拡張子nsiにこのソフトが関連付けられ、右クリックでメニューが出現するようになります。

-{link:http://nsis.sourceforge.net/}

まず、ソフトウェアの動作に必要なファイルを揃え、それらをインストールする手順をスクリプトファイル(拡張子nsi)に記述します。以下は必要なファイルをProgram Filesフォルダ以下に導入するだけの単純なサンプルです。セミコロンで始まる行はコメントになります。 :; lumber-commons-1.0.nsi :; :; インストーラの名前 :Name "lumber-commons" : :; 生成するEXEファイルの名前 :OutFile "lumber-commons-1.0.exe" : :; デフォルトのインストールフォルダ :InstallDir $PROGRAMFILES\\\lumber-mill.co.jp\\commons-1.0 : :; ページ : :Page directory :Page instfiles : :; インストールするもの :Section "" : : ; インストール対象フォルダをセット : SetOutPath $INSTDIR\\lib : : ; ファイルを置いていく : File commons\\lib\\* : :SectionEnd

スクリプトが完成したら、右クリックメニューからコンパイルを実行します。コンパイルに成功すると、OutFileで指定した名前の実行ファイルが生成され、インストーラが完成します。

**コマンドレシピ -{link:tips,スクリプト中で使用できるコマンドのTips}

***コマンドプロンプトからコンパイルする makensis.exeという実行ファイルを使用すると、GUIのウィンドウを開かずに実行ファイルを生成することができます。 :> "C:\\Program Files\\NSIS\\makensis.exe" foo.nsi

***文字列のクォートについて シングルクォート、ダブルクォート、バッククォートを使い分けることで、それぞれ他のクォート記号を文字列中に使用できます。

:MessageBox MB_OK "I'll be happy" :MessageBox MB_OK 'And he said to me "Hi there!"' :MessageBox MB_OK `And he said to me "I'll be damned!"`

或いは、「$\\」記号をクォートの前に置いてエスケープすることも可能です。「$」を表示したい場合は、「$$」と二個続けて記述します。

:MessageBox MB_OK "$\\"A quote from a wise man$\\" said the wise man" :MessageBox MB_OK "That would be $$60"

{link:http://nsis.sourceforge.net/How_can_I_use_quotes_in_a_string}

この記事は役に立ちましたか?