1

我想在安装程序的完成页面中添加一个复选框。我在完成页上已经有两个复选框,一个用于显示自述文件,另一个用于打开另一个链接。现在我想添加第三个复选框来打开我的应用程序的主页。

我正在遵循这个问题中给出的步骤,因为这正是我想要实现 的目标自定义现有的 NSIS MUI2 页面

但第三个复选框没有出现在完成页面上。我正在使用 MUI2。

这是我的代码

 

!include "MUI2.nsh" 

var newCheckBox
Function showNewCheckbox
${NSD_CreateCheckbox} 50u 60u 100% 10u "&Launch Google"
Pop $newCheckBox
FunctionEnd

Function launchNewLink
${NSD_GetState} $newCheckBox $0
${If} $0 <> 0
    ExecShell "open" "http://google.com"
${EndIf}
FunctionEnd

Function LaunchLink
  ExecShell "open" "http://yahoo.com"
FunctionEnd


!define MUI_FINISHPAGE_NOAUTOCLOSE
!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_NOTCHECKED
!define MUI_FINISHPAGE_RUN_TEXT "Open yahoo"
!define MUI_FINISHPAGE_RUN_FUNCTION "LaunchLink"
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_FINISHPAGE_SHOWREADME "${README_FILE}"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW showNewCheckbox
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE launchNewLink
!insertmacro MUI_PAGE_FINISH

我错过了什么吗?

4

1 回答 1

1

如果$newCheckBox是数字!= 0 表示控件已创建,也许它就在左侧图像的后面?尝试 120u 175u 作为前两个数字。

如果您不需要复选框,则可以使用以下链接:

!define MUI_FINISHPAGE_LINK "My website"
!define MUI_FINISHPAGE_LINK_LOCATION "http://example.com"
!insertmacro MUI_PAGE_FINISH
于 2012-10-15T07:45:31.867 回答