NSIS Users Manual
Check http://nsis.sf.net for news, information, support, examples, tutorials and more.
Quick links:
FAQ - A list of frequently asked questions
NSIS Wiki - Examples, functions, tutorials, plug-ins, software and more
Forum - Post questions or discuss NSIS features
Copyright (C) 1999-2017 Contributors
- Chapter 1: Introduction to NSIS
- Chapter 2: Tutorial: The Basics
- Introduction
- Script Files
- Scripting structure
- Installer Attributes
- Pages
- Sections
- Functions
- Working with Scripts
- Script Execution
- Compiler Commands
- Compiler
- Modern UI
- Plug-ins
- More
- Chapter 3: Command Line Usage
- Chapter 4: Scripting Reference
- Script File Format
- Variables
- Labels
- Relative Jumps
- Pages
- Sections
- Functions
- Installer Attributes
- General Attributes
- AddBrandingImage
- AllowRootDirInstall
- AutoCloseWindow
- BGFont
- BGGradient
- BrandingText
- Caption
- ChangeUI
- CheckBitmap
- CompletedText
- ComponentText
- CRCCheck
- DetailsButtonText
- DirText
- DirVar
- DirVerify
- FileErrorText
- Icon
- InstallButtonText
- InstallColors
- InstallDir
- InstallDirRegKey
- InstProgressFlags
- InstType
- LicenseBkColor
- LicenseData
- LicenseForceSelection
- LicenseText
- ManifestDPIAware
- ManifestSupportedOS
- MiscButtonText
- Name
- OutFile
- RequestExecutionLevel
- SetFont
- ShowInstDetails
- ShowUninstDetails
- SilentInstall
- SilentUnInstall
- SpaceTexts
- SubCaption
- UninstallButtonText
- UninstallCaption
- UninstallIcon
- UninstallSubCaption
- UninstallText
- WindowIcon
- XPStyle
- Compiler Flags
- AllowSkipFiles
- FileBufSize
- SetCompress
- SetCompressor
- SetCompressorDictSize
- SetDatablockOptimize
- SetDateSave
- SetOverwrite
- Unicode
- Version Information
- Instructions
- Basic Instructions
- Registry, INI, File Instructions
- DeleteINISec
- DeleteINIStr
- DeleteRegKey
- DeleteRegValue
- EnumRegKey
- EnumRegValue
- ExpandEnvStrings
- FlushINI
- ReadEnvStr
- ReadINIStr
- ReadRegDWORD
- ReadRegStr
- WriteINIStr
- WriteRegBin
- WriteRegDWORD
- WriteRegStr
- WriteRegExpandStr
- WriteRegMultiStr
- SetRegView
- General Purpose Instructions
- CallInstDLL
- CopyFiles
- CreateDirectory
- CreateShortcut
- GetDLLVersion
- GetDLLVersionLocal
- GetFileTime
- GetFileTimeLocal
- GetFullPathName
- GetTempFileName
- SearchPath
- SetFileAttributes
- RegDLL
- UnRegDLL
- Flow Control Instructions
- Abort
- Call
- ClearErrors
- GetCurrentAddress
- GetFunctionAddress
- GetLabelAddress
- Goto
- IfAbort
- IfErrors
- IfFileExists
- IfRebootFlag
- IfSilent
- IntCmp
- IntCmpU
- MessageBox
- Return
- Quit
- SetErrors
- StrCmp
- StrCmpS
- File Instructions
- FileClose
- FileOpen
- FileRead
- FileReadUTF16LE
- FileReadByte
- FileReadWord
- FileSeek
- FileWrite
- FileWriteUTF16LE
- FileWriteByte
- FileWriteWord
- FindClose
- FindFirst
- FindNext
- Uninstaller Instructions
- Miscellaneous Instructions
- String Manipulation Instructions
- Stack Support
- Integer Support
- Reboot Instructions
- Install Logging Instructions
- Section Management
- SectionSetFlags
- SectionGetFlags
- SectionSetText
- SectionGetText
- SectionSetInstTypes
- SectionGetInstTypes
- SectionSetSize
- SectionGetSize
- SetCurInstType
- GetCurInstType
- InstTypeSetText
- InstTypeGetText
- User Interface Instructions
- BringToFront
- CreateFont
- DetailPrint
- EnableWindow
- FindWindow
- GetDlgItem
- HideWindow
- IsWindow
- LockWindow
- SendMessage
- SetAutoClose
- SetBrandingImage
- SetDetailsView
- SetDetailsPrint
- SetCtlColors
- SetSilent
- ShowWindow
- Multiple Languages Instructions
- Multiple Languages
- Plug-in DLLs
- Silent Installers/Uninstallers
- Chapter 5: Compile Time Commands
- Compiler Utility Commands
- !include
- !addincludedir
- !addplugindir
- !appendfile
- !cd
- !delfile
- !echo
- !error
- !execute
- !makensis
- !packhdr
- !finalize
- !system
- !tempfile
- !getdllversion
- !warning
- !pragma
- !verbose
- Predefines
- ${__COUNTER__}
- ${__FILE__}
- ${__FILEDIR__}
- ${__LINE__}
- ${__DATE__}
- ${__TIME__}
- ${__TIMESTAMP__}
- ${NSIS_VERSION}
- ${NSIS_PACKEDVERSION}
- ${NSIS_CHAR_SIZE}
- ${NSIS_PTR_SIZE}
- ${U+1}...${U+10FFFF}
- Scope Predefines
- Read environment variables
- Conditional Compilation
- Appendix A: Modern User Interface
- Appendix B: DLL/TLB Library Setup
- Introduction
- Library Installation
- Library Uninstallation
- Visual Basic 6 Run-Time Files
- Appendix C: Useful Scripts
- Get Internet Explorer version
- Is .NET Framework installed?
- Is Macromedia Flash Player installed?
- Connect to the Internet
- Get Installer Filename
- Prevent Multiple Instances
- More
- Appendix D: Useful Information
- Error Levels
- Add uninstall information to Add/Remove Programs
- Calling an external DLL using the System.dll plug-in
- Dump Content of Log Window to File
- How to Read REG_MULTI_SZ Values
- Predefined Macros for Unicode support
- Appendix E: Useful Headers
- File Functions Header
- Introduction
- Locate
- GetSize
- DriveSpace
- GetDrives
- GetTime
- GetFileAttributes
- GetFileVersion
- GetExeName
- GetExePath
- GetParameters
- GetOptions
- GetOptionsS
- GetRoot
- GetParent
- GetFileName
- GetBaseName
- GetFileExt
- BannerTrimPath
- DirState
- RefreshShellIcons
- Text Functions Header
- Introduction
- LineFind
- LineRead
- FileReadFromEnd
- LineSum
- FileJoin
- TextCompare
- TextCompareS
- ConfigRead
- ConfigReadS
- ConfigWrite
- ConfigWriteS
- FileRecode
- TrimNewLines
- Word Functions Header
- Appendix F: Changelog and Release Notes
- 3.02
- 3.01
- 3.0
- 3.0 Release Candidate 2
- 3.0 Release Candidate 1
- 3.0 Beta 3
- 3.0 Beta 2
- 3.0 Beta 1
- 3.0 Beta 0
- 3.0 Alpha 2
- 3.0 Alpha 1
- 3.0 Alpha 0
- 2.51
- 2.50
- 2.49
- 2.48
- 2.47
- 2.46
- 2.45
- 2.44
- 2.43
- 2.42
- 2.41
- 2.40
- 2.39
- 2.38
- 2.37
- 2.36
- 2.35
- 2.34
- 2.33
- 2.32
- 2.31
- 2.30
- 2.29
- 2.28
- 2.27
- 2.26
- 2.25
- 2.24
- 2.23
- 2.22
- 2.21
- 2.20
- 2.19
- 2.18
- 2.17
- 2.16
- 2.15
- 2.14
- 2.13
- 2.12
- 2.11
- 2.10
- 2.09
- 2.08
- 2.07
- 2.06
- 2.05
- 2.04
- 2.03
- 2.02
- 2.01
- 2.0
- 2.0 Release Candidate 4
- 2.0 Release Candidate 3
- 2.0 Release Candidate 2
- 2.0 Release Candidate 1
- 2.0 Beta 4
- 2.0 Beta 3
- 2.0 Beta 2
- 2.0 Beta 1
- 2.0 Beta 0
- 2.0 Alpha 7
- 2.0 Alpha 6
- 2.0 Alpha 5
- 2.0 Alpha 4
- 2.0 Alpha 3
- 2.0 Alpha 2
- 2.0 Alpha 1
- 2.0 Alpha 0
- Older Versions
- Appendix G: Building NSIS
- Appendix H: Credits
- Appendix I: License