[英]MUI pages order in NSIS
如何根據某些條款更改頁面順序? 例如,自定義頁面上有2個單選按鈕-“修復程序”和“卸載程序”。 當我選擇“修復程序”時,下一個應該顯示5頁,而當我選擇另一個單選按鈕時應該顯示2頁。 可以在卸載程序安裝頁面中使用嗎,反之亦然?
MUI_UNPAGE_CONFIRM在安裝程序中實際上沒有意義,除了可以在安裝程序和卸載程序中使用所有頁面類型之外。
要跳過頁面,您必須在該頁面的預回調函數中調用Abort
。 您也可以直接跳到特定頁面 。
!include MUI2.nsh
!include LogicLib.nsh
Var pagemode
Function selectpagemode
MessageBox MB_YESNO "Mode A?" IDNO nope
StrCpy $pagemode "A"
Return
nope:
StrCpy $pagemode "B"
FunctionEnd
Function onlymodeA
${IfThen} $pagemode != "A" ${|} Abort ${|}
FunctionEnd
Function onlymodeB
${IfThen} $pagemode == "A" ${|} Abort ${|}
FunctionEnd
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE selectpagemode
!insertmacro MUI_PAGE_WELCOME
;Mode A
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeA
!insertmacro MUI_PAGE_LICENSE "${__FILE__}"
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeA
!insertmacro MUI_PAGE_COMPONENTS
;Mode B
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeB
!insertmacro MUI_PAGE_COMPONENTS
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeB
!insertmacro MUI_PAGE_LICENSE "${__FILE__}"
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE English
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.