From a0870f21c1d5281ce7a1dc90dee43882febd82c0 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Thu, 2 Apr 2015 18:56:38 +0200 Subject: windows: run uninstaller on re-install --- tools/x-win/package.sh | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tools/x-win/package.sh b/tools/x-win/package.sh index ecc588b55b..610830f934 100755 --- a/tools/x-win/package.sh +++ b/tools/x-win/package.sh @@ -320,6 +320,29 @@ cat >> $NSISFILE << EOF !insertmacro MUI_UNPAGE_INSTFILES !insertmacro MUI_LANGUAGE "English" + +Function .onInit + + ReadRegStr \$R0 HKLM \ + "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\${PRODUCT_ID}" \ + "UninstallString" + StrCmp \$R0 "" done + + MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \ + "${PROGRAM_NAME} is already installed. \$\\n\$\\nClick 'OK' to remove the \ + previous version or 'Cancel' to cancel this upgrade." \ + IDOK uninst + Abort + + uninst: + ClearErrors + Exec \$INSTDIR\uninst.exe ; + + done: + +FunctionEnd + + Section "${PROGRAM_NAME}${PROGRAM_VERSION} (required)" SecMainProg SectionIn RO SetOutPath \$INSTDIR -- cgit v1.2.3