Archive: custom icon


custom icon
Hi,
I want to use my own icon I include it like this:
!define MUI_ICON "myIco.ico"
But it doesn't work , the installer doesn't start. I don't know why maybe it is not compatibel. Is there any restrictions about the design of icons?
I send the icon as attachment (the gif version), maybe could somebody help me to find the error!
Thanks


Hi mamilo!

Does the compiler create an exe file? Could you succeed in defining another icon?

Cheers

Bruno


Hi Bruno,
the installer doesn't create an exe file and I don't succeed in defining another icon!

Mamilo


Hi mamilo!

Could you post the compiler output?

Cheers

Bruno


Try this to see if it works.
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
copied from NSIS manual:
[Note that if you use an uninstaller, each icon in the icon file must have the same size and color depth as its matching icon in the uninstaller icon file. The order of the icons in the icon file also matters. For example, if the installer icon file has three icons, first icon sized 32x32 pixels with 8bpp, second icon sized 16x16 pixels with 8bpp and third icon sized 8x8 with 8bpp; then the uninstaller icon file must have three icons with the same sizes and color depths, in the same order.]


Hi Bruno,
here the compiler output (I got no error message!!):


MakeNSIS v2.14 - Copyright 1999-2006 Nullsoft, Inc.

Portions Copyright (C) 1995-1998 Jean-loup Gailly and Mark Adler (zlib).
Portions Copyright (C) 1996-2002 Julian R Seward (bzip2).
Portions Copyright (C) 1999-2003 Igor Pavlov (lzma).

Contributors: nnop@newmail.ru, Ryan Geiss, Andras Varga, Drew Davidson, Peter Windridge, Dave Laundon, Robert Rainwater, Yaroslav Faybishenko, Jeff Doozan, Amir Szekely, Ximon Eighteen, et al.

Processing config:
Processing plugin dlls: "E:\Development\Java\nsis-2.14\Plugins\*.dll"
- AdvSplash::show
- Banner::destroy
- Banner::getWindow
- Banner::show
- BgImage::AddImage
- BgImage::AddText
- BgImage::Clear
- BgImage::Destroy
- BgImage::Redraw
- BgImage::SetBg
- BgImage::SetReturn
- BgImage::Sound
- Dialer::AttemptConnect
- Dialer::AutodialHangup
- Dialer::AutodialOnline
- Dialer::AutodialUnattended
- Dialer::GetConnectedState
- InstallOptions::dialog
- InstallOptions::initDialog
- InstallOptions::show
- LangDLL::LangDialog
- Math::Script
- NSISdl::download
- NSISdl::download_quiet
- Splash::show
- StartMenu::Init
- StartMenu::Select
- StartMenu::Show
- System::Alloc
- System::Call
- System::Copy
- System::Free
- System::Get
- System::Int64Op
- System::Store
- TypeLib::GetLibVersion
- TypeLib::Register
- TypeLib::UnRegister
- UserInfo::GetAccountType
- UserInfo::GetName
- VPatch::vpatchfile
- nsExec::Exec
- nsExec::ExecToLog
- nsExec::ExecToStack

!define: "MUI_INSERT_NSISCONF"=""

Changing directory to: "E:\Development\Java\Eclipse3.1\workspace\Futronic\src"

Processing script file: "E:\Development\Java\Eclipse3.1\workspace\Futronic\src\FutronicTerminal.nsi"
Name: "Futronic Terminal"
!define: "REGKEY"="SOFTWARE\$(^Name)"
!define: "VERSION"="1.0"
!define: "COMPANY"="S&D"
!define: "URL"=""
!define: "MUI_PAGE_TITLE"="$ComponentName Installation."
!define: "MUI_FINISHPAGE_NOAUTOCLOSE"=""
!define: "MUI_HEADERIMAGE"=""
!define: "MUI_HEADERIMAGE_BITMAP"="..\image\Header\orange.bmp"
!define: "MUI_ABORTWARNING"=""
!define: "MUI_HEADERIMAGE_UNBITMAP"="..\image\Header\orange-uninstall.bmp"
!define: "MUI_UNABORTWARNING"=""
!define: "MUI_WELCOMEFINISHPAGE_INI"="ioSpecial.ini"
!define: "MUI_WELCOMEFINISHPAGE_BITMAP"="..\image\Wizard\orange.bmp"
!define: "MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH"=""
!define: "MUI_UNWELCOMEFINISHPAGE_INI"="ioSpecial.ini"
!define: "MUI_UNWELCOMEFINISHPAGE_BITMAP"="..\image\Wizard\orange-uninstall.bmp"
!define: "MUI_UNWELCOMEFINISHPAGE_BITMAP_NOSTRETCH"=""
!define: "SECTION_ON"="${SF_SELECTED}"
!define: "MUI_STARTMENUPAGE_REGISTRY_ROOT"="HKLM"
!define: "MUI_STARTMENUPAGE_NODISABLE"=""
!define: "MUI_STARTMENUPAGE_REGISTRY_KEY"="SOFTWARE\$(^Name)"
!define: "MUI_STARTMENUPAGE_REGISTRY_VALUENAME"="StartMenuGroup"
!define: "MUI_UNICON"="..\image\Icons\orange-uninstall.ico"
!define: "MUI_UNFINISHPAGE_NOAUTOCLOSE"=""
!define: "MUI_LANGDLL_REGISTRY_ROOT"="HKLM"
!define: "MUI_LANGDLL_REGISTRY_KEY"="SOFTWARE\$(^Name)"
!define: "MUI_LANGDLL_REGISTRY_VALUENAME"="Installer Language"
!define: "MUI_LANGDLL_ALWAYSSHOW"=""
!define: "LOGICLIB_SECTIONCMP"=""
!include: "E:\Development\Java\nsis-2.14\Include\Sections.nsh"
!define: "SECTIONS_INCLUDED"=""
!define: "SF_SELECTED"="1"
!define: "SF_SECGRP"="2"
!define: "SF_SUBSEC"="2"
!define: "SF_SECGRPEND"="4"
!define: "SF_SUBSECEND"="4"
!define: "SF_BOLD"="8"
!define: "SF_RO"="16"
!define: "SF_EXPAND"="32"
!define: "SF_PSELECTED"="64"
!define: "SF_TOGGLED"="128"
!define: "SF_NAMECHG"="256"
!define: "SECTION_OFF"="0xFFFFFFFE"
!define: "INSTTYPE_1"="1"
!define: "INSTTYPE_2"="2"
!define: "INSTTYPE_3"="4"
!define: "INSTTYPE_4"="8"
!define: "INSTTYPE_5"="16"
!define: "INSTTYPE_6"="32"
!define: "INSTTYPE_7"="64"
!define: "INSTTYPE_8"="128"
!define: "INSTTYPE_9"="256"
!define: "INSTTYPE_10"="512"
!define: "INSTTYPE_11"="1024"
!define: "INSTTYPE_12"="2048"
!define: "INSTTYPE_13"="4096"
!define: "INSTTYPE_14"="8192"
!define: "INSTTYPE_15"="16384"
!define: "INSTTYPE_16"="32768"
!define: "INSTTYPE_17"="65536"
!define: "INSTTYPE_18"="131072"
!define: "INSTTYPE_19"="262144"
!define: "INSTTYPE_20"="524288"
!define: "INSTTYPE_21"="1048576"
!define: "INSTTYPE_22"="2097152"
!define: "INSTTYPE_23"="4194304"
!define: "INSTTYPE_24"="8388608"
!define: "INSTTYPE_25"="16777216"
!define: "INSTTYPE_26"="33554432"
!define: "INSTTYPE_27"="67108864"
!define: "INSTTYPE_28"="134217728"
!define: "INSTTYPE_29"="268435456"
!define: "INSTTYPE_30"="536870912"
!define: "INSTTYPE_31"="1073741824"
!define: "INSTTYPE_32"="2147483648"
!include: closed: "E:\Development\Java\nsis-2.14\Include\Sections.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\MUI.nsh"
!include: "E:\Development\Java\nsis-2.14\Contrib\Modern UI\System.nsh"
NSIS Modern User Interface version 1.74 - © 2002-2006 Joost Verburg (E:\Development\Java\nsis-2.14\Contrib\Modern UI\System.nsh:11)
!define: "MUI_VERBOSE"="3"
!include: closed: "E:\Development\Java\nsis-2.14\Contrib\Modern UI\System.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\MUI.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\logiclib.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\logiclib.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\TextFunc.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\TextFunc.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\FileFunc.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\FileFunc.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\WinMessages.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\WinMessages.nsh"
!include: "DDE-Client.nsh"
!include: closed: "DDE-Client.nsh"
!include: "ArcWrapper.nsh"
!include: "StrSort.nsh"
!include: "E:\Development\Java\nsis-2.14\Include\logiclib.nsh"
!include: closed: "E:\Development\Java\nsis-2.14\Include\logiclib.nsh"
Function: "StrSort"
Exch($R6,0)
Exch(st(1),0)
Exch($R5,0)
Exch(st(1),0)
Exch(st(2),0)
Exch($R4,0)
Exch(st(2),0)
Exch(st(3),0)
Exch($R3,0)
Exch(st(3),0)
Exch(st(4),0)
Exch($R2,0)
Exch(st(4),0)
Exch(st(5),0)
Exch($R1,0)
Exch(st(5),0)
Exch(st(6),0)
Exch($R0,0)
Exch(st(6),0)
Push: $0
Push: $1
Push: $2
Push: $3
Push: $4
Push: $5
Push: $6
Push: $7
Push: $8
!insertmacro: _IfThen
!insertmacro: end of _IfThen
!insertmacro: _IfThen
!insertmacro: end of _IfThen
!insertmacro: _IfThen
!insertmacro: end of _IfThen
StrLen $0 "$R0"
StrLen $1 "$R1"
StrLen $2 "$R2"
StrLen $3 "$R3"
StrCpy $6 "0" () ()
IntOp: $7=$6+$2
!insertmacro: _Do
!insertmacro: end of _Do
StrCpy $8 "$R0" ($2) ($6)
!insertmacro: _IfThen
!insertmacro: end of _IfThen
!insertmacro: _IfThen
!insertmacro: end of _IfThen
IntOp: $6=$6+1
IntOp: $7=$7+1
!insertmacro: _Loop
!insertmacro: end of _Loop
!insertmacro: _If
!insertmacro: end of _If
StrCpy $8 "$R0" ($6) ()
StrCpy $R0 "$R0" () ($7)
StrCpy $R0 "$8$R0" () ()
!insertmacro: _EndIf
!insertmacro: end of _EndIf
StrCpy $4 "$6" () ()
StrCpy $5 "$7" () ()
IntOp: $6=$6-$1
IntOp: $7=$6+$1
!insertmacro: _Do
!insertmacro: end of _Do
StrCpy $8 "$R0" ($1) ($6)
!insertmacro: _If
!insertmacro: end of _If
StrCpy $6 "0" () ()
StrCpy $7 "0" () ()
!insertmacro: _Goto
!insertmacro: end of _Goto
!insertmacro: _EndIf
!insertmacro: end of _EndIf
!insertmacro: _IfThen
!insertmacro: end of _IfThen
!insertmacro: _IfThen
!insertmacro: end of _IfThen
IntOp: $6=$6-1
IntOp: $7=$7-1
!insertmacro: _Loop
!insertmacro: end of _Loop
!insertmacro: _If
!insertmacro: end of _If
IntOp: $6=$6+$1
!insertmacro: _EndIf
!insertmacro: end of _EndIf
StrCpy $8 "$6" () ()
!insertmacro: _If
!insertmacro: end of _If
StrCpy $6 "$4" () ()
!insertmacro: _Else
!insertmacro: end of _Else
IntOp: $6=$4+$2
!insertmacro: _EndIf
!insertmacro: end of _EndIf
IntOp: $7=$6+$3
StrCpy $4 "$8" () ()
!insertmacro: _Do
!insertmacro: end of _Do
StrCpy $8 "$R0" ($3) ($6)
!insertmacro: _If
!insertmacro: end of _If
StrCpy $6 "$0" () ()
StrCpy $7 "$0" () ()
!insertmacro: _Goto
!insertmacro: end of _Goto
!insertmacro: _EndIf
!insertmacro: end of _EndIf
!insertmacro: _IfThen
!insertmacro: end of _IfThen
!insertmacro: _IfThen
!insertmacro: end of _IfThen
IntOp: $6=$6+1
IntOp: $7=$7+1
!insertmacro: _Loop
!insertmacro: end of _Loop
!insertmacro: _If
!insertmacro: end of _If
IntOp: $7=$7-$3
!insertmacro: _EndIf
!insertmacro: end of _EndIf
StrCpy $5 "$7" () ()
IntOp: $5=$5-$4
StrCpy $R0 "$R0" ($5) ($4)
Goto: +2
StrCpy $R0 "" () ()
Pop: $8
Pop: $7
Pop: $6
Pop: $5
Pop: $4
Pop: $3
Pop: $2
Pop: $1
Pop: $0
Pop: $R6
Pop: $R5
Pop: $R4
Pop: $R3
Pop: $R2
Pop: $R1
Exch($R0,0)
FunctionEnd
!include: closed: "StrSort.nsh"
!include: closed: "ArcWrapper.nsh"
!include: "WINDOWS_VERSION.nsh"
Function: "GetWindowsVersion"
Push: $R0
Push: $R1
ReadRegStr $R0 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CurrentVersion
IfErrors ?0:lbl_winnt
ReadRegStr $R0 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\VersionNumber
StrCpy $R1 "$R0" (1) ()
StrCmp "$R1" "4" equal=0, nonequal=lbl_error
StrCpy $R1 "$R0" (3) ()
StrCmp "$R1" "4.0" equal=lbl_win32_95, nonequal=
StrCmp "$R1" "4.9" equal=lbl_win32_ME, nonequal=lbl_win32_98
StrCpy $R0 "95" () ()
Goto: lbl_done
StrCpy $R0 "98" () ()
Goto: lbl_done
StrCpy $R0 "ME" () ()
Goto: lbl_done
StrCpy $R1 "$R0" (1) ()
StrCmp "$R1" "3" equal=lbl_winnt_x, nonequal=
StrCmp "$R1" "4" equal=lbl_winnt_x, nonequal=
StrCpy $R1 "$R0" (3) ()
StrCmp "$R1" "5.0" equal=lbl_winnt_2000, nonequal=
StrCmp "$R1" "5.1" equal=lbl_winnt_XP, nonequal=
StrCmp "$R1" "5.2" equal=lbl_winnt_2003, nonequal=lbl_error
StrCpy $R0 "NT $R0" (6) ()
Goto: lbl_done
StrCpy $R0 "2000" () ()
Goto: lbl_done
StrCpy $R0 "XP" () ()
Goto: lbl_done
StrCpy $R0 "2003" () ()
Goto: lbl_done
StrCpy $R0 "" () ()
Pop: $R1
Exch($R0,0)
FunctionEnd
!include: closed: "WINDOWS_VERSION.nsh"
!include: "LANGUAGE.nsh"
!include: closed: "LANGUAGE.nsh"
!include: "CIMOG_EPRO_INSTALL.nsh"
Function: "CopyFile1"
Push: a
Push: $R7
Call "SplitFirstStrPart"
Pop: $R0
Pop: $R1
StrCmp "$R0" "" equal=0, nonequal=+2
Goto: +3
StrCpy $R0 "$R9" () ()
CopyFiles: (silent) "$R0" -> "$INSTDIR", size=0KB
Push: $0
FunctionEnd
Function: "RemoveFile"
StrCpy $R0 "$R9" () ()
Delete: /REBOOTOK "$R0"
ClearErrors
Push: $0
FunctionEnd
Function: "SplitFirstStrPart"
Exch($R0,0)
Exch(st(1),0)
Exch($R1,0)
Push: $R2
Push: $R3
StrCpy $R3 "$R1" () ()
StrLen $R1 "$R0"
IntOp: $R1=$R1+1
IntOp: $R1=$R1-1
StrCpy $R2 "$R0" (1) (-$R1)
StrCmp "$R1" "0" equal=exit0, nonequal=
StrCmp "$R2" "$R3" equal=exit1, nonequal=loop
StrCpy $R1 "" () ()
Goto: exit2
IntOp: $R1=$R1-1
StrCmp "$R1" "0" equal=0, nonequal=+3
StrCpy $R2 "" () ()
Goto: +2
StrCpy $R2 "$R0" () (-$R1)
IntOp: $R1=$R1+1
StrCpy $R0 "$R0" (-$R1) ()
StrCpy $R1 "$R2" () ()
Pop: $R3
Pop: $R2
Exch($R1,0)
Exch(st(1),0)
Exch($R0,0)
FunctionEnd
Function: "GetRoot"
Exch($0,0)
Push: $1
Push: $2
Push: $3
Push: $4
StrCpy $1 "$0" (2) ()
StrCmp "$1" "\\" equal=UNC, nonequal=
StrCpy $0 "$1" () ()
Goto: done
StrCpy $2 "3" () ()
StrLen $3 "$0"
IntCmp $2:$3 equal=, < , > loopend
StrCpy $1 "$0" (1) ($2)
IntOp: $2=$2+1
StrCmp "$1" "\" equal=loopend, nonequal=loop
StrCmp "$4" "1" equal=+3, nonequal=
StrCpy $4 "1" () ()
Goto: loop
IntOp: $2=$2-1
StrCpy $0 "$0" ($2) ()
Pop: $4
Pop: $3
Pop: $2
Pop: $1
Exch($0,0)
FunctionEnd
Function: "StrLower"
Exch($0,0)
Push: $1
Push: $2
Push: $3
Push: $4
StrCpy $1 "" () ()
StrCpy $2 "$0" (1) ()
StrCmp "$2" "" equal=Done, nonequal=
StrCpy $0 "$0" () (1)
StrCpy $3 "122" () ()
IntFmt: $3->$4 (fmt:%c)
StrCmp "$2" "$4" equal=Match, nonequal=
IntOp: $3=$3-1
StrCmp "$3" "91" equal=NoMatch, nonequal=Loop2
StrCpy $2 "$4" () ()
StrCpy $1 "$1$2" () ()
Goto: Loop
StrCpy $0 "$1" () ()
Pop: $4
Pop: $3
Pop: $2
Pop: $1
Exch($0,0)
FunctionEnd
!include: closed: "CIMOG_EPRO_INSTALL.nsh"
!include: "CIMOG_INSTALL.nsh"
!include: closed: "CIMOG_INSTALL.nsh"
!include: "EPRO_INSTALL.nsh"
!include: closed: "EPRO_INSTALL.nsh"
!include: "COM_INTERFACE.nsh"
!include: closed: "COM_INTERFACE.nsh"
ReserveFile: "LanguageChoiceDialog.ini" [compress] 164/258 bytes
ReserveFile: "InstallTypePage.ini" [compress] 288/687 bytes
ReserveFile: "ArcWrapper_DIALOG.ini" [compress] 168/407 bytes
ReserveFile: "DDE_COMPONENT.ini" [compress] 338/1385 bytes
ReserveFile: "COM_INTERFACE.ini" [compress] 202/483 bytes
!insertmacro: Locate
!insertmacro: end of Locate
!insertmacro: GetParent
!insertmacro: end of GetParent
!insertmacro: GetParent
!insertmacro: end of GetParent
!insertmacro: GetBaseName
!insertmacro: end of GetBaseName
!insertmacro: MUI_RESERVEFILE_INSTALLOPTIONS
!insertmacro: end of MUI_RESERVEFILE_INSTALLOPTIONS
!insertmacro: MUI_RESERVEFILE_LANGDLL
!insertmacro: end of MUI_RESERVEFILE_LANGDLL
Var: "StartMenuGroup"
Var: "WindowsVersion"
Var: "IsAspicInstalled"
Var: "ComponentName"
Var: "hwnd"
Var: "IsDDE"
Var: "aspicPath"
Var: "isSohardCard"
Var: "ArcNetNodeAddr"
Var: "ArcNetDriverName"
Var: "SERVERGOB"
Var: "GPSPUSHER"
Var: "TerminalPRG"
Var: "DrvEnabled"
Var: "isInstall"
Var: "componentToUpdate"
Var: "ComponentLang"
Var: "Com"
!define: "MUI_ICON"="futronic_32.ico"
!insertmacro: MUI_PAGE_WELCOME
!insertmacro: end of MUI_PAGE_WELCOME
!insertmacro: MUI_PAGE_LICENSE
!insertmacro: end of MUI_PAGE_LICENSE
!insertmacro: PAGE_COMPONENTSLANGUAGE
Page: custom (creator:PAGE_COMPONENTSLANGUAGE_SHOW) (leave:PAGE_COMPONENTSLANGUAGE_LEAVE)
Function: "PAGE_COMPONENTSLANGUAGE_SHOW"
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_DISPLAY
!insertmacro: end of MUI_INSTALLOPTIONS_DISPLAY
FunctionEnd
Function: "PAGE_COMPONENTSLANGUAGE_LEAVE"
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$0" "0" equal=validate, nonequal=
Abort: ""
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCpy $ComponentLang "$0" () ()
Goto: versiontest
Call "windowsVersionTest"
FunctionEnd
Function: "windowsVersionTest"
!insertmacro: _If
!insertmacro: end of _If
MessageBox: 48: "$(WindowsTestErrString)"
Quit
!insertmacro: _Else
!insertmacro: end of _Else
!insertmacro: _If
!insertmacro: end of _If
MessageBox: 48: "$(WindowsTestErrString)"
Quit
!insertmacro: _Else
!insertmacro: end of _Else
Push:
Push: $WindowsVersion
Call "SplitFirstStrPart"
Pop: $R0
Pop: $R1
StrCmp "$R0" "NT" equal=0, nonequal=endIf
MessageBox: 48: "$(WindowsTestErrString)"
Quit
!insertmacro: _EndIf
!insertmacro: end of _EndIf
!insertmacro: _EndIf
!insertmacro: end of _EndIf
FunctionEnd
!insertmacro: end of PAGE_COMPONENTSLANGUAGE
!define: "MUI_PAGE_CUSTOMFUNCTION_LEAVE"="COMPONENT_POST"
!insertmacro: MUI_PAGE_COMPONENTS
!insertmacro: end of MUI_PAGE_COMPONENTS
!insertmacro: CIMOG_EPRO_INSTALLTYPE
!define: "ID"="129.1"
Page: custom (creator:PAGE_COMPONENTINSTALLTYPE_SHOW) (leave:PAGE_COMPONENTINSTALLTYPE_LEAVE)
Function: "PAGE_COMPONENTINSTALLTYPE_SHOW"
StrCmp "$ComponentName" "CIMOG" equal=show, nonequal=
StrCmp "$ComponentName" "EPRO" equal=show, nonequal=
Abort: ""
Plugin Command: initDialog $PLUGINSDIR\InstallTypePage.ini
Pop: $0
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
Plugin Command: show
Pop: $0
FunctionEnd
Function: "PAGE_COMPONENTINSTALLTYPE_LEAVE"
ReadINIStr $0 [Settings]:State from $PLUGINSDIR\InstallTypePage.ini
StrCmp "$0" "0" equal=validate, nonequal=
StrCmp "$0" "2" equal=installUpdateRadio, nonequal=
StrCmp "$0" "3" equal=installUpdateRadio, nonequal=
Abort: ""
ReadINIStr $0 [Field 2]:State from $PLUGINSDIR\InstallTypePage.ini
StrCmp "$0" "1" equal=install, nonequal=update
ReadINIStr $1 [Field 5]:HWND from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=0
ReadINIStr $1 [Field 5]:HWND2 from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=0
Abort: ""
ReadINIStr $0 [Field 3]:State from $PLUGINSDIR\InstallTypePage.ini
ReadINIStr $1 [Field 5]:HWND from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=$0
ReadINIStr $1 [Field 5]:HWND2 from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=$0
Abort: ""
ReadINIStr $0 [Field 2]:State from $PLUGINSDIR\InstallTypePage.ini
StrCmp "$0" "1" equal=0, nonequal=+4
StrCpy $isInstall "1" () ()
StrCpy $componentToUpdate "" () ()
Goto: done_129.1
ReadINIStr $0 [Field 3]:State from $PLUGINSDIR\InstallTypePage.ini
StrCmp "$0" "1" equal=0, nonequal=done_129.1
StrCpy $isInstall "0" () ()
ReadINIStr $1 [Field 5]:HWND from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=$0
ReadINIStr $1 [Field 5]:HWND2 from $PLUGINSDIR\InstallTypePage.ini
EnableWindow: handle=$1 enable=$0
ReadINIStr $componentToUpdate [Field 5]:State from $PLUGINSDIR\InstallTypePage.ini
Goto: done_129.1
!undef: "ID"
FunctionEnd
Section: ""
SectionEnd
!insertmacro: end of CIMOG_EPRO_INSTALLTYPE
!define: "MUI_PAGE_HEADER_TEXT"="$(DirectoryPageHeaderText)"
!define: "MUI_PAGE_HEADER_SUBTEXT"="$(DirectoryPageHeaderSubText)"
!define: "MUI_DIRECTORYPAGE_TEXT_TOP"="$(DirectoryPageText)"
!define: "MUI_DIRECTORYPAGE_VERIFYONLEAVE"=""
!define: "MUI_PAGE_CUSTOMFUNCTION_PRE"="DIRECTORY_PRE"
!insertmacro: MUI_PAGE_DIRECTORY
!insertmacro: end of MUI_PAGE_DIRECTORY
!insertmacro: COM_INTERFACE
!define: "ID"="140.1"
Page: custom (creator:COM_COMPONENTS_PAGE_SHOW) (leave:COM_COMPONENTS_PAGE_LEAVE)
Function: "COM_COMPONENTS_PAGE_SHOW"
StrCmp "$ComponentName" "CIMOG" equal=show, nonequal=
Abort: ""
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_DISPLAY
!insertmacro: end of MUI_INSTALLOPTIONS_DISPLAY
FunctionEnd
Function: "COM_COMPONENTS_PAGE_LEAVE"
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$0" "0" equal=0, nonequal=
StrCmp "$1" "1" equal=0, nonequal=+3
StrCpy $Com "1" () ()
Goto: end_140.1
StrCmp "$2" "1" equal=0, nonequal=+3
StrCpy $Com "2" () ()
Goto: end_140.1
StrCmp "$3" "1" equal=0, nonequal=end_140.1
StrCpy $Com "3" () ()
Goto: end_140.1
!undef: "ID"
FunctionEnd
!insertmacro: end of COM_INTERFACE
!insertmacro: ArcWrapper
!define: "ID"="141.1"
Page: custom (creator:ArcWrapper_DIALOG_SHOW) (leave:ArcWrapper_DIALOG_LEAVE)
Function: "ArcWrapper_DIALOG_SHOW"
StrCmp "$ComponentName" "EPRO" equal=show, nonequal=
StrCmp "$ComponentName" "ArcWrapper" equal=show, nonequal=
Abort: ""
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_DISPLAY
!insertmacro: end of MUI_INSTALLOPTIONS_DISPLAY
FunctionEnd
Function: "ArcWrapper_DIALOG_LEAVE"
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCpy $ArcNetNodeAddr "$1" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCpy $ArcNetDriverName "$2" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$0" "0" equal=validate, nonequal=
Abort: ""
Goto: end_141.1
!undef: "ID"
FunctionEnd
!insertmacro: end of ArcWrapper
!insertmacro: DDE-CLIENT
Page: custom (creator:DDE_COMPONENTS_PAGE_SHOW) (leave:DDE_COMPONENTS_PAGE_LEAVE)
Function: "DDE_COMPONENTS_PAGE_SHOW"
StrCmp "$IsDDE" "true" equal=show, nonequal=
Abort: ""
StrCmp "$ComponentName" "" equal=0, nonequal=c
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
Goto: Continue
!insertmacro: MUI_HEADER_TEXT
!insertmacro: end of MUI_HEADER_TEXT
StrCmp "$ComponentName" "CIMOG" equal=0, nonequal=e
StrCpy $TerminalPRG "CIMOG.BAT" () ()
Goto: continue
StrCmp "$ComponentName" "EPRO" equal=0, nonequal=continue
StrCpy $TerminalPRG "ArcWrap.BAT" () ()
Goto: continue
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_WRITE
!insertmacro: end of MUI_INSTALLOPTIONS_WRITE
!insertmacro: MUI_INSTALLOPTIONS_DISPLAY
!insertmacro: end of MUI_INSTALLOPTIONS_DISPLAY
FunctionEnd
Function: "DDE_COMPONENTS_PAGE_LEAVE"
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $0 "T" () ()
Goto: +2
StrCpy $0 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $1 "T" () ()
Goto: +2
StrCpy $1 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $2 "T" () ()
Goto: +2
StrCpy $2 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $3 "T" () ()
Goto: +2
StrCpy $3 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $4 "T" () ()
Goto: +2
StrCpy $4 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $5 "T" () ()
Goto: +2
StrCpy $5 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $6 "T" () ()
Goto: +2
StrCpy $6 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $7 "T" () ()
Goto: +2
StrCpy $7 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $8 "T" () ()
Goto: +2
StrCpy $8 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $9 "T" () ()
Goto: +2
StrCpy $9 "F" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $SERVERGOB "TRUE" () ()
Goto: +2
StrCpy $SERVERGOB "FALSE" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "1" equal=0, nonequal=+3
StrCpy $GPSPUSHER "TRUE" () ()
Goto: +2
StrCpy $GPSPUSHER "FALSE" () ()
!insertmacro: MUI_INSTALLOPTIONS_READ
!insertmacro: end of MUI_INSTALLOPTIONS_READ
StrCmp "$R0" "0" equal=0, nonequal=
StrCpy $DrvEnabled "$0$1$2$3$4$5$6$7$8$9" () ()
FunctionEnd
!insertmacro: end of DDE-CLIENT
!insertmacro: MUI_PAGE_INSTFILES
!insertmacro: end of MUI_PAGE_INSTFILES
!insertmacro: MUI_PAGE_FINISH
!insertmacro: end of MUI_PAGE_FINISH
!insertmacro: MUI_UNPAGE_WELCOME
!insertmacro: end of MUI_UNPAGE_WELCOME
!insertmacro: MUI_UNPAGE_CONFIRM
!insertmacro: end of MUI_UNPAGE_CONFIRM
!insertmacro: MUI_UNPAGE_INSTFILES
!insertmacro: end of MUI_UNPAGE_INSTFILES
!insertmacro: LANG_LOAD
!insertmacro: MUI_LANGUAGE
!insertmacro: end of MUI_LANGUAGE
Compilation time: 6.828 sec.


Try updating to NSIS 2.22 and try again.

The compiler should print a line

Outfile: myexe.exe