我已经使用NSIS 2.46在Windows上构建了一个简单的安装程序。
那是许可证页面的代码
# UI
!include "MUI2.nsh"
!define MUI_LICENSEPAGE_RADIOBUTTONS
!insertmacro MUI_PAGE_LICENSE "..\legal\disclaimer.txt"
!insertmacro MUI_LANGUAGE "English"
当我运行安装程序时,“许可证”页面会正确显示许可证文本,但只有禁用的“关闭”和启用的“取消”按钮。一旦我将选择的单选按钮更改为“我接受许可协议(protocol)的条款”,便会启用“关闭”按钮。如果我单击它们,这两个按钮都会导致安装程序退出。
如果许可证被接受,如何将脚本更改为具有“继续”按钮?
最佳答案
仅具有许可证页面的安装程序是毫无意义的,如果在其后添加另一个页面,则一切都应正常运行:
!include "MUI2.nsh"
!define MUI_LICENSEPAGE_RADIOBUTTONS
!insertmacro MUI_PAGE_LICENSE "${__FILE__}"
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
不建议创建没有InstFiles页面的安装程序,但可以这样做:
!include "MUI2.nsh"
!define MUI_LICENSEPAGE_RADIOBUTTONS
!define MUI_PAGE_CUSTOMFUNCTION_SHOW SetNextBtnTextToInstall
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE DoInstall
!insertmacro MUI_PAGE_LICENSE "${__FILE__}"
!insertmacro MUI_LANGUAGE "English"
Function SetNextBtnTextToInstall
GetDlgItem $0 $hwndparent 1
${NSD_SetText} $0 "$(^InstallBtn)"
FunctionEnd
Function DoInstall
MessageBox mb_ok "Install would take place here..."
SetErrorLevel 0
Quit
FunctionEnd
关于windows - NSIS安装程序的“许可证”页面仅显示 “Close”和 “Cancel”按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25013173/