Цитата diakov:
как на финишной странице создать произвольное количество run чекбоксов »
|
В дополнение к FINISHPAGE_RUN (можно и вообще без него ) добавить CUSTOMFUNCTION_SHOW ( и CUSTOMFUNCTION_LEAVE ) перед MUI_PAGE_FINISH и создать n-чекбоксов :
Код:

outfile "test_FINISHPAGE.exe"
!include MUI2.nsh
!insertmacro MUI_PAGE_INSTFILES
!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_TEXT " RunFunction"
!define MUI_FINISHPAGE_RUN_FUNCTION "RunFunction"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW CustomFinish
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE FinishLeave
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "English"
var Checkbox
var Checkbox2
var Checkbox3
Function CustomFinish
${NSD_CreateCheckbox} 120u 110u 100% 10u " Доп чекбокс"
Pop $Checkbox
SetCtlColors $Checkbox "" "ffffff"
${NSD_CreateCheckbox} 120u 130u 100% 10u " Доп чекбокс2"
Pop $Checkbox2
SetCtlColors $Checkbox2 "" "ffffff"
${NSD_CreateCheckbox} 120u 150u 100% 10u " Доп чекбокс3"
Pop $Checkbox3
SetCtlColors $Checkbox3 "" "ffffff"
FunctionEnd
Function FinishLeave
${NSD_GetState} $Checkbox $0
${If} $0 <> 0
MessageBox mb_ok "Доп чекбокс отмечен"
${EndIf}
${NSD_GetState} $Checkbox2 $0
${If} $0 <> 0
MessageBox mb_ok "Доп чекбокс2 отмечен"
${EndIf}
${NSD_GetState} $Checkbox3 $0
${If} $0 <> 0
MessageBox mb_ok "Доп чекбокс3 отмечен"
${EndIf}
FunctionEnd
Function RunFunction
MessageBox mb_ok "Чего то запустили"
FunctionEnd
Section
SectionEnd