簡體   English   中英

從卸載部分NSIS重新執行安裝

[英]Reexecute the installation from the uninstall section NSIS

我有一個NSIS代碼來安裝程序,在.onInit中,我檢查是否存在較舊的版本,如果用戶單擊“確定”按鈕,則將其卸載,我希望一旦卸載完成,安裝將再次執行,請嘗試調用.onInit函數中的un.onUninstSuccess但自un.以來不接受un. 函數僅接受un. 功能。 任何想法將不勝感激。

這不是方法。 啟動卸載程序時,您將啟動另一個進程(通常是uninstall.exe ),因此您不能僅從它跳轉到安裝程序。

您可以做的是:

  • 檢查是否存在以前的版本
  • 如果是這樣,請在等待子進程完成的同時啟動其unistall.exe
  • 返回安裝程序后,繼續安裝

從設置中調用卸載程序的常用方法是

ExecWait '"$INSTDIR\uninstaller.exe" /S _?=$INSTDIR'

可能不是最干凈的解決方案,但是nsis Wiki上有一個組合的un / installer示例

暫無
暫無

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

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