NSIS

仕事でちょっとNSISというシステムを使って自動インストーラを作る機会があったのでメモ。
NSISはオープンソースの自動インストーラ作成システムで、スクリプト的な言語を用いて色々とカスタマイズもできる。
素手スクリプトガリガリ書くのは大変なので、HM NIS EDITというNSIS用のIDEも提供されている。
HM NIS EDITには便利なウィザードが用意されているので、これを使って大部分を自動生成してから素手でカスタマイズするのが普通っぽい。
ウィザードに従っていればほとんどは簡単に作れるが、ちょこちょこ不安定なところがある。
特に、アプリケーションファイルの追加のところでAddDirTreeを選択するとファイルの量が多いとかなりの時間待たされる。
しかも、ここで下手に動くとハングアップする。
さらに、コンパイルにも相当な時間がかかり、途中で"Out of Memory"とかいってエラーで止まったりするので要注意。
どうもサイズが大きすぎると出るらしい。
NSIS Quick Setup Script Generatorが解決してくれるとかくれないとか。。
スクリプトの先頭に"!verbose 3"を追加すると解決したりしなかったり。
同じ問題をWINAMP.COM | Forums - "Out of memory';." messageで議論してるので参考にメモ。
このあたりが安定してくれるとかなり使いやすいツールになるんじゃないかと思う。

環境変数の設定もできるっぽい。
そのあたりは、How can I create or change an environment variableからのリンク先で説明されている。