Ok I called those parts of the NSIS script that look like !include MUI2.nsh namespaces. I need a little more clarity on which are the namespaces that I really should !include in my code. Here are my confusions:
1) I have codes like this:
2) I use a function defined here to see if a section is selected or not like this:
3) I have code like:
Why is that I am able to compile NSIS script without including appropriate packages/references?
1) I have codes like this:
which basically means I am using a custom InstallOptions page as well. So I thought I need to include !include InstallOptions.nsh and !include MUI.nsh. It works. But to my surprise even if I am not including !include InstallOptions.nsh the code compiles, and I see no difference in end result !! But if I am including only !include MUI2.nsh, the code doesn't compile. But it compiles and works normally if I include !include MUI2.nsh & !include InstallOptions.nsh. So what should I include, !include MUI.nsh alone or a combo of !include MUI2.nsh & !include InstallOptions.nsh ?? . The code compiles if I include all !include MUI2.nsh, !include InstallOptions.nsh and !include MUI.nsh. In that case, the macros and functions will be loaded from !include MUI2.nsh or !include MUI.nsh ??code:
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
Page custom DbPage "" ": Information Page"
Page instfiles
!insertmacro MUI_PAGE_FINISH
2) I use a function defined here to see if a section is selected or not like this:
The link asks to include !include Sections.nsh, but for me the script compiles even without including that. Why is it?? Should I ideally !include it?code:
SectionGetFlags ${Section_Name} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} show
3) I have code like:
etc. So shouldn't I !include LogicLib ? I get the code compiled even without using !include LogicLib.code:
${If} ${FileExists} `$0\*.*`
${Else}
CreateDirectory $0
${EndIf}
${If} $2 != <
StrCpy $2 >
${EndIf}
${If} $3 != <
StrCpy $3 >
${EndIf}
Why is that I am able to compile NSIS script without including appropriate packages/references?
Comment