NSIS アンインストーラーのウェルカム画面にチェックボックスを追加しようとしていますが、例が見つかりません。MUI2のドキュメントから、ウェルカム ページで実行できるカスタム関数が見つかりません。
ドキュメントや私が見つけた他の回答に基づいて、仕上げページをカスタマイズする方が簡単なようです。
ウェルカム ページをカスタマイズする方法はありますか? そうでない場合、意図を達成するための他のオプションは何ですか?
リンク先の MUI(1) ドキュメントには、プレ/ショー コールバックでウェルカム ページをカスタマイズする方法についてのメモがあります。MUI2 を使用すると、show コールバックにコントロールを追加できます。これらのカスタム コントロールの詳細については、nsDialogs のドキュメントを参照してください...
!include MUI2.nsh
!insertmacro MUI_PAGE_INSTFILES
!define MUI_PAGE_CUSTOMFUNCTION_SHOW un.ModifyUnWelcome
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE un.LeaveUnWelcome
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_LANGUAGE English
Var mycheckbox ; You could just store the HWND in $1 etc if you don't want this extra variable
Function un.ModifyUnWelcome
${NSD_CreateCheckbox} 120u -18u 50% 12u "Do something special"
Pop $mycheckbox
SetCtlColors $mycheckbox "" ${MUI_BGCOLOR}
${NSD_Check} $mycheckbox ; Check it by default
FunctionEnd
Function un.LeaveUnWelcome
${NSD_GetState} $mycheckbox $0
${If} $0 <> 0
MessageBox mb_ok "I'm special"
${EndIf}
FunctionEnd
Section testuninstaller
Initpluginsdir
WriteUninstaller "$pluginsdir\u.exe"
ExecWait '"$pluginsdir\u.exe" _?=$pluginsdir'
Sectionend