方案一:
思路:
把安裝指令碼裡的解除安裝部分抽出來單獨做乙個解除安裝指令碼,解除安裝指令碼編譯成exe後進行簽名,再把解除安裝程式打包進安裝包,最後對安裝包進行簽名
步驟:
1、從安裝指令碼中找到以下**並刪除
; 安裝解除安裝過程頁面
!insertmacro mui_unpage_instfiles
和
writeuninstaller "$instdir\uninst.exe"
2、抽出安裝指令碼中的解除安裝部分**,遷移到新的解除安裝指令碼裡,並加入版本資訊等內容,製作乙個新的包當做解除安裝程式
3、生成解除安裝程式後進行簽名
4、把簽名好的uninst.exe打包進安裝包裡
file "$uninst.exe"
5、生成安裝包程式,然後對安裝包進行簽名
注:該步驟僅為測試用,適用於大部分安裝指令碼,不同的安裝指令碼所需要實現的功能不同,可按照這個思路自行抽出解除安裝部分**
方案二:
思路:
與方案一類似,先執行安裝程式(安裝程式不要簽名),生成解除安裝程式後對解除安裝程式進行簽名,然後打包進安裝程式裡,最後再對安裝包進行簽名
步驟:
1、nsis生成安裝程式(不需要簽名)
2、執行安裝程式,安裝完成後再安裝目錄找到解除安裝程式,再對解除安裝程式進行簽名
3、把解除安裝程式拿出來打包進安裝程式內file "$instdir\uninst.exe"
4、注釋安裝指令碼裡的writeuninstaller "$instdir\uninst.exe"
(不再自動生成解除安裝程式)
5、重新編譯安裝指令碼生成安裝程式,並對其進行簽名
NSIS打包程式時解除安裝不淨問題
在用nisedit打安裝包後遇到三個問題 1 在重新包裝時,程式路徑會出現問題,會指向子資料夾中,程式就公出錯。而且多次重複包裝後檔案路徑會變長 原因 研究 發現是安裝時寫入的登錄檔中的程式路徑不對 解決 改為正確的路徑 section post writeuninstaller instdir u...
NSIS 基於指令碼的安裝程式
nsis nullsoft scriptable install system 是 windows 下的乙個工具,它允許程式設計師 來建立這樣的安裝程式。它發布於乙個開源的協議並且對於任何使用來說都是完全免費的。nsis使用者手冊 foobar是我聽聽 的工具,而且使用了winamp那麼長時間了,對...
03 NSIS 將解除安裝資訊新增到「新增 刪除程式」
3.在登錄檔新增的非必要屬性 4.參考 在hklm software microsoft windows currentversion uninstall下建立乙個具有產品名稱的金鑰,以將條目新增到 控制面板 的 新增 刪除程式 部分。可以將多個值寫入金鑰,以提供有關您的應用程式和解除安裝程式的其他...