最新消息:

NSIS制作安装包,如何检测并卸载已有版本

nsis 永恒心锁 1440浏览 0评论
Var UNINSTALL_PROG
Var OLD_VER
Var OLD_PATH

Function .onInit
 ClearErrors
 ReadRegStr $UNINSTALL_PROG ${PRODUCT_UNINST_ROOT_KEY} ${PRODUCT_UNINST_KEY} "UninstallString"
 IfErrors done

 ReadRegStr $OLD_VER ${PRODUCT_UNINST_ROOT_KEY} ${PRODUCT_UNINST_KEY} "DisplayVersion"
 MessageBox MB_YESNOCANCEL|MB_ICONQUESTION \
 "检测到本机已经安装了 ${PRODUCT_NAME} $OLD_VER。\
 $\n$\n是否先卸载已安装的版本?" \
 /SD IDYES \
 IDYES uninstall \
 IDNO done
 Abort

uninstall:
 StrCpy $OLD_PATH $UNINSTALL_PROG -10

 ExecWait '"$UNINSTALL_PROG" /S _?=$OLD_PATH' $0
 DetailPrint "uninst.exe returned $0"
 Delete "$UNINSTALL_PROG"
 RMDir $OLD_PATH

done:
FunctionEnd
永恒心锁,版权所有丨如未注明,均为转载丨本网站采用BY-NC-SA协议进行授权

转载请注明:永恒心锁-分享互联网 » NSIS制作安装包,如何检测并卸载已有版本

您必须 登录 才能发表评论!