可能我没有在nsis脚本中获取页面和部分的基础知识。
我必须分析一下我没有制作的安装脚本。在脚本的顶部有MUI页面的宏,例如
!insertmacro MUI_PAGE_LICENSE $(license)
!insertmacro MUI_PAGE_INSTFILES ....
然后在代码的下方还有部分
Section "MainSection" SEC01
SetShellVarContext current
SetOutPath "$INSTDIR"
SetOverwrite ifnewer
File "${xy_TEMP_SRC}\InstallSrc\xy.exe"
File "${xy_TEMP_SRC}\InstallSrc\xy.exe.config"
SetOutPath "$INSTDIR\sk"
File "${xy_TEMP_SRC}\InstallSrc\sk\xy.resources.dll"
SetOutPath "$INSTDIR"
CreateDirectory "$SMPROGRAMS\xy"
CreateShortCut "$SMPROGRAMS\xy\xy.lnk" "$INSTDIR\xy.exe"
CreateShortCut "$DESKTOP\xy.lnk" "$INSTDIR\xy.exe"
SectionEnd
+ another sections for instance unninstall section
我的问题是当页面没有引用到部分时,如何以及何时执行部分。
我的大脑告诉我,有些部分应该在安装过程中的页面确认期间执行,但我想这是错误的,所以请有人告诉我它是如何工作的吗?
答案 0 :(得分:6)
所有部分都在instfiles
页面上按照部分的顺序执行。如果你需要在之前,之后或之间执行的东西,你可以使用函数(例如预函数或假函数)
答案 1 :(得分:4)
!insertmacro MUI_PAGE_INSTFILES
执行各个部分。