簡體   English   中英

如何從NSIS完成頁面執行命令

[英]How to execute a command from a NSIS finish page

在嘗試了各種方法之后,我再也沒有找到帶有復選框的完成頁面。 有關stackoverflow的問答,建議在!define MUI_PAGE_FINISH_RUN命令之前使用!insertmacro MUI_PAGE_FINISH命令。

所以我把例子WelcomeFinish.nsi並添加只有1線!define MUI_PAGE_FINISH_RUN "Notepad.exe"只是之前!insertmacro MUI_PAGE_FINISH命令。 結束頁面上仍然沒有復選框。

我究竟做錯了什么? 我在64位計算機上使用Win7 Professional

以下NSIS文檔描述了如何實現此目的: http : //nsis.sourceforge.net/Run_an_application_shortcut_after_an_install

您需要在MUI_PAGE_FINISH之前添加以下定義:

!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_TEXT "Launch notepad"
!define MUI_FINISHPAGE_RUN_FUNCTION "StartNotepad"
!insertmacro MUI_PAGE_FINISH

我們將MUI_FINISHPAGE_RUN設置為空,而在MUI_FINISHPAGE_RUN_FUNCTION定義一個要運行的函數(我們將函數稱為StartNotepad )。 它將使用ExecShell啟動我們感興趣的過程(或快捷方式/ lnk):

Function StartNotepad
  ExecShell "" "notepad.exe"
FunctionEnd

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM