\C{cmdlineusage} Command Line Usage \H{usage} MakeNSIS Usage NSIS installers are generated by using the 'MakeNSIS' program to compile a NSIS script (.NSI) into an installer executable. The NSIS development kit installer sets up your computer so that you can compile a .nsi file by simply right-clicking on it in explorer, and selecting 'compile'. If you want to use MakeNSIS on the command line, the syntax of the makensis command is: \c makensis [option | script.nsi | - [...]] \S1{usagereference} Options \b /LICENSE displays a keen license page. \b The /V switch followed by a number between 0 and 4 will set the verbosity of output accordingly. 0=no output, 1=errors only, 2=warnings and errors, 3=info, warnings, and errors, 4=all output. \b The /O switch followed by a filename tells the compiler to print its log to that file (instead of the screen) \b /PAUSE makes makensis pause before quitting, which is useful when executing directly from Windows. \b /NOCONFIG disables inclusion of \\nsisconf.nsh. Without this parameter, installer defaults are set from nsisconf.nsh. \b /CMDHELP prints basic usage information for command (if specified), or all commands (if command is not specified). \b /HDRINFO prints out information on what options were used to compile makensis was compiled with. \b /NOCD disables the current directory change to that of the .nsi file \b Using the /D switch one or more times will add to symbols to the globally defined list (See !define). \b Using the /X switch one or more times will execute the code you specify following it. Example: "/XAutoCloseWindow false" \b Specifying a dash (-) for the script name will tell makensis to use the standard input as a source. \S1{usagenotes} Notes \b Parameters are processed by order. \c{makensis /Ddef script.nsi} is not the same as \c{makensis script.nsi /Ddef}. \b If multiple scripts are specified, they are treated as one concatenated script. \S1{usageexamples} Examples Basic usage: \c makensis.exe myscript.nsi Quiet mode: \c makensis.exe /V1 myscript.nsi Force compressor: \c makensis.exe /X"SetCompressor /FINAL lzma" myscript.nsi Change script behavior: \c makensis.exe /DUSE_UPX /DVERSION=1.337 /DNO_IMAGES myscript.nsi Parameters order: \c makensis /XSection sectioncontents.nsi /XSectionEnd \H{installerusage} Installer Usage Generated installers and uninstallers accept a few options on the command line. These options give the user a bit more control over the installation process. \S1{} Common Options \b /NCRC disables the CRC check, unless \c{\R{acrccheck}{CRCCheck} force} was used in the script. \b /S runs the installer or uninstaller silently. See \k{silent} for more information. \b /D sets the default installation directory (\R{varother}{$INSTDIR}), overriding \R{ainstalldir}{InstallDir} and \R{ainstalldirregkey}{InstallDirRegKey}. It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces. \S1{} Uninstaller Specific Options \b _?= sets $INSTDIR. It also stops the uninstaller from copying itself to the temporary directory and running from there. It can be used along with \R{execwait}{ExecWait} to wait for the uninstaller to finish. It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces. \S1{} Examples \c installer.exe /NCRC \c installer.exe /S \c installer.exe /D=C:\Program Files\NSIS \c installer.exe /NCRC /S /D=C:\Program Files\NSIS \c uninstaller.exe /S _?=C:\Program Files\NSIS \c # uninstall old version \c ExecWait '"$INSTDIR\uninstaller.exe" /S _?=$INSTDIR'