0
我在定制NSIS卸载程序页面上做了一些research,并且在Welcome和Finish页面取得了一些成功。自定义NSIS卸载程序确认页面
但是,我在使用确认页面的欢迎页面上使用相同的模板时遇到了问题。如果我的add any control using nsDialogs值为非零值height
,则确认页面上的所有现有控件(除标题和按钮外)都将消失。
这里是我的代码(它成功地更新按钮的名称,但会删除该网页上的所有其他控件)
!include MUI2.nsh
OutFile "CustomUninstaller.exe"
InstallDir "C:\Program Files (x86)\NSIS\Examples\CustomFinish"
!define APPNAME "Testing"
Name "${APPNAME}"
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_UNPAGE_WELCOME
!define MUI_PAGE_CUSTOMFUNCTION_SHOW un.ModifyUnConfirm ; My custom function for the Confirm page
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
!insertmacro MUI_LANGUAGE "English"
Function un.ModifyUnConfirm
# Change "Uninstall" button to say "Continue" on uninstaller confirmation page
GetDlgItem $0 $HWNDPARENT 1
SendMessage $0 ${WM_SETTEXT} 0 "STR:Continue"
# Add new label. If these three lines are commented out, I see the regular controls of this page show up.
# The position, color and background of the label don't seem to matter
${NSD_CreateLabel} 50% 50% 100% 10u "Testing!!!"
Pop $0
SetCtlColors $0 "" ${MUI_BGCOLOR}
FunctionEnd
Section TestUninstaller
WriteUninstaller "$INSTDIR\unCustomUninstaller.exe"
ExecWait "$INSTDIR\unCustomUninstaller.exe"
Sectionend
问题:
- 有谁知道为什么控件会消失?
- 如何成功地将控件添加到此页面需要做什么?
我看到 - 我不知道该页面不被认为是nsDialgos页。很高兴知道。再次感谢安德斯。 – diaho