0% found this document useful (0 votes)
518 views5 pages

NSIS Learning PDF

This document provides an overview of NSIS (Nullsoft Scriptable Install System), a free software tool for creating Windows installers. It describes what NSIS is, how installation scripts are created using NSIS, and some key components and features of NSIS scripts including sections, pages, functions, and user interface options.

Uploaded by

jet_media
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
518 views5 pages

NSIS Learning PDF

This document provides an overview of NSIS (Nullsoft Scriptable Install System), a free software tool for creating Windows installers. It describes what NSIS is, how installation scripts are created using NSIS, and some key components and features of NSIS scripts including sections, pages, functions, and user interface options.

Uploaded by

jet_media
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

 NSISYYZ]\Z]dyZM



Y|yZ]




NSIS (Nullsoft Scriptable Install System)YYZ]\Z]dyZM


Ze||

/MY{Z/\/Z]f{Y{aNSISYYZZYeYZ}]ZYY





 {ZYYYY]\Z]fZfyZ]Mu{Ze{Y{



|

{/Z/ZYYY ZZZZ]eY]\Z]fyZY]dYYY,NSIS
,db/YZ/]/YNSISYY |m,dY\Z]ZYmYZ{Y
s/YZ/d/YYYYdbYfNotepad{ZZ]Y{ZfYZ]Ye {ZY\Z]
 {

NSISdbYZ

,|/Z]//y/,{ZfY{f{Y dYf{]y,NSISdbYZ{
ZjY] |]||my{Yf{Y{Y,yZfY{"\"Y]dfY~Z]|Ye

Messagebox MB_OK|MB_ICONINFORMATION \
"This is a sample that shows how to use line breaks for larger commands in NSIS scripts"

 dYnsidbYZ|aa]




dbYZZfyZ

 |Z]]Ye|z]Sections,\ZcZyZ|YedbYZ



cZy

Z/{cZyYf] |zY\Z]vZdbYcZy
Y/y] |/e]ZYmYZ{ZMY]|fe]ZYmYZ{|ef
 d,\Z]v,\,YmYZZ|fs|]cZy

 NSISYYZ]\Z]dyZM


Pagef{

j/ |/{Y{ZZnaq\Z]YmYZ|edbYZ{cZv
 \dZ{na,|Myna

Sections
{//bj/ {f,|{ZnY|Z]\Z]ZZcYf{]dY{
dY|{MSectionYZj{ ZZ{~u,ZZ


Section "My Program"


SetOutPath $INSTDIR
File "My Program.exe"
File "Readme.txt"
SectionEnd

 |Z]SectionZY|u|Z]ZZnYY],\dbY]




]Ye

/d/Y/Y{ZSection]Ye] |Z]dbYZ|ZSectionj|Ye]Ye

|//e/]Ye ]Z//e|/e]Ye |f{]]Ye ||YyY|Ye]Ye


 f
/]Ye |/Y/yYCallf/{Y{Zf/YZ/]/{/]YeZ/ZSectionyY{Y|Ye]Z]Ye
 \//Z]YmYj,|{w\Z]]]Z{Y|Y|YmYff
|YmY]\Z]{YyYf.onInit]ZeZjY]

Function .onInit
MessageBox MB_YESNO "This will install My Program. Do you wish to continue?" IDYES gogogo
Abort
gogogo:
FunctionEnd



{Zf/Yf{f{{Y|YedbYZ{,\Z]]v]Z]YfY]
 Modern UIcYf{ {ZcYf{ |


Zj]cYf{Yy]

/Z]/{/d{Y]{ZdbYZdyZ,Zj}Z]YyZnY{
/]YfyZ/Y/]Modern UIcYf/{Y{ZcYf{Y{ZfYZm]ZjY{ {teY\
dY|{ZfY\Z]]v]Z


 NSISYYZ]\Z]dyZM
NSIS Modern User Interface version 1.73 (NSIS v2.09)
My Program Script
Written by Mahdi Nosratian




cZzdbYZ,NSISYYZ{{cZveWYYY]dbYY|f]YYy|qY
/Y |MYZZYM]YZf|Ye|Z]Yz{z]Y dYdbYY|
 {Y|Z\Z{iZepcZve

include "MUI.nsh



|M/Z/Z,|/{ZfYHeader|MZY|YdbYZ|e include f{


Modern UI/]YY{Zf/YY/]Z |f{ZdbY{{ZfYY]fzcZz]YeZ
 dbY]YMUI.nshZdbYY|f]Y{|Z]

Name and file
NameMy Program"
OutFile "My Program.exe

Default installation folder


InstallDir "$PROGRAMFILES\My Program



 |///eY\Z]YmYZZOutFilef{ |eY\Z]ZNamef{
 |e,\YyYZZ\fY{\aInstallDirf{

/fYProgram Filesa|$dZ]Zf$PROGRAMFILESf
 |{Z,{\|YyZ]


Interface Settings

XPStyle on
define MUI_ABORTWARNING
define MUI_PAGE_HEADER_TEXT My Program Setup
define MUI_ICON ".\Pictures\Setup.ico



cZ/e/q,/Y~ZInterface Settings]Z]YcZeZ]YdbYYdY
 edY{Y\ZfzZd{Y{Zq
/fzZ/dZna{Y{ZY]XPfYY\Z]|eXPStyle onf{
 |{ZMYY|nadefine MUI_ABORTWARNINGf{ |{ZfYZ]
 |zY\naZ]fedefine MUI_PAGE_HEADER_TEXT My Program Setupf{
 |zY\Z]Mdefine MUI_ICON ".\Pictures\Setup.icof{


 NSISYYZ]\Z]dyZM

Pages
insertmacro
insertmacro
insertmacro
insertmacro
insertmacro

MUI_PAGE_WELCOME
MUI_PAGE_LICENSE ".\License\License.rtf
MUI_PAGE_DIRECTORY
MUI_PAGE_INSTFILES
MUI_PAGE_FINISH





Z//na{Y{Z/cZ/eq,Y~ZcZvcZeZ]YdbYYdY
 edY{Y\Zfz
YZ/nY{ |{ZfYZ]Y]ZnaY|Y\Z]|einsertmacrocYf{
Z/ZaY,ZZb\u{Y{Z,\,Z,|MyY{{ZfYna

Languages

insertmacro MUI_LANGUAGE "Farsi

 \fZ



 |/{Zf/Y\Z]v{Y{ZY]ZZ]YYdbY]dY{
Z/{/\NSISYYf]{yZ]{Y|ZfYZZ]YY]ZZ]|me
 ||]YMY{ZfYf{dbYyY{{dZ


Installer Sections
Section "My Program"
SetOutPath $INSTDIR
File ".\My Files\MyFile.exe
SectionEnd



,{//ZnYM{Z]\Y]YmYcZddbYYfY{dY
 {{YZZ~uZb,Z\ej
 |[ZzfYMY]YZ{ZMY{dSection "My Program"f{
ZY{$INSTDIRf,|eYZZ\SetOutPath $INSTDIRf{
 |Y|Y|e,\[ZzfYna{Z|eZ]Y|f]Y{
 {\]ZZ|bhZ]File ".\My Files\MyFile.exef{

 NSISYYZ]\Z]dyZM


\ZyY{fY{]ZnMYYZZ|Z]dbYZY".\My Files\MyFile.execZ^
Z/dbYZfY{dZmfY{|{Z.d |z,|{Zm
 {Y{YM{
 |{ZYcZZZa{dZZaSectionEndf{

\Z]YmYZfyZZbZ

/]NSISYYY,dYdbYZ],M{y}dbYfY|]
d/Y]Compile NSIS Script (Choose Compressor,|Z]|\Zf
{//|/Z]Z/d/Y{,{ZChoose CompressornaY[ZzfYZ],|Z
|[ZzfYYBest CompressorcZ^|Yef][ZzfYY],|[ZzfYY\ZZ
|/{Z] |[ZzfYYLZMAZ|Yer dYLZMA[ZzfYZ]]Y]Y
Z/{\//Z,{ZnYdZ]cZrZq|ZM\ZfyZZbZcZOK
f/,d/Y/fZ/nYd/Z/]cZ/Y]^ZaZbZna{{fyZ
 {




YZ/d/|/{Y/],d/Y|{mdbYcYf{Y]ZdZYY{

 |mYYYZY]|YecYf{

 |dZ{http://www.mahdisoft.5gigs.comdZY|YeYZY
 |ZZY[email protected]{M]Y{ycY{ZacY
|Z],uZa{

Ze|

{Zf ZfY{^










You might also like