2012-10-15 47 views
1

我想添加一個複選框到安裝程序的完成頁面。我在完成頁面上有兩個複選框,一個用於顯示自述文件,另一個用於打開另一個鏈接。現在我想添加第三個複選框來打開我的應用程序的主頁。自定義NSIS安裝程序的完成頁面

我下面這個問題,因爲這給出的步驟是我想達到 Customizing an exsisting NSIS MUI2 page

確切的事情,但第三複選框沒有出現在finishpage。我正在使用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 

我缺少的東西?

回答

1

如果$newCheckBox是一個數字!= 0它表示控件已創建,也許它只是在左側的圖像後面?前兩個數字嘗試120u 175u。

如果你不需要一個複選框,你可以使用鏈接:

!define MUI_FINISHPAGE_LINK "My website" 
!define MUI_FINISHPAGE_LINK_LOCATION "http://example.com" 
!insertmacro MUI_PAGE_FINISH 
+0

感謝安德斯!它確實隱藏在圖像背後......它不會發生在我身上 – Neo

+0

我可以更改鏈接顏色嗎? –

+0

@JorgeB .: SetCtlColors – Anders

相關問題