[wpkg-users] InnoSetup, uninsXXX.exe and "uninsXXX.dat is corrupted"

Paul McGrath J.P.McGrath at leeds.ac.uk
Tue Nov 5 14:40:16 CET 2013


Innosetup usually does overwrite the unins000.exe but there are the occasional blips, often user related through testing or sometimes a poorly compiled setup program.  I agree with Ulli that the best approach is to uninstall and delete the whole program folder and then upgrade.  I handle it like this:

     <install cmd='%SOFTWARE%\Dropbox\Dropbox.%version%.exe /verysilent' />
     <upgrade include="remove" />
     <upgrade include="install" />
    <remove architecture="x86" cmd='"%PROGRAMFILES%\dropbox\unins000.exe" /verysilent' ><exit code="any" /></remove>
     <remove architecture="x86" cmd='cmd /c rmdir /q /s "%PROGRAMFILES%\dropbox"' ><exit code="any" /></remove>
     <remove architecture="x64" cmd='"%PROGRAMFILES(x86)%\dropbox\unins000.exe" /verysilent' ><exit code="any" /></remove>
     <remove architecture="x64" cmd='cmd /c rmdir /q /s "%PROGRAMFILES(x86)%\dropbox"' ><exit code="any" /></remove>

So the upgrade uninstalls, deletes the program folder and then reinstalls.  Nice and tidy
Paul

-----Original Message-----
From: wpkg-users-bounces at lists.wpkg.org [mailto:wpkg-users-bounces at lists.wpkg.org] On Behalf Of Ulli Conrad
Sent: 05 November 2013 13:07
To: wpkg-users at lists.wpkg.org
Subject: Re: [wpkg-users] InnoSetup, uninsXXX.exe and "uninsXXX.dat is corrupted"

Hi there,

On 5 Nov 2013 you wrote:

> The problem is that sometimes there is a "QT Lite\unins001.exe" and in 
> this case, executing "QT Lite\unins000.exe" returns a popup error :
InnoSetup apparently doesn't overwrite uninst*.* files when upgrading, but increases filename.
Therefore I handle InnoSetup uninstallers by removing old uninst*.* files when upgrading:

<upgrade  cmd='%COMSPEC% /C if exist
"%PROGRAMFILES(X86)%\AppInstalledByInnoSetup\unins*.*" del "%PROGRAMFILES(X86)%\AppInstalledByInnoSetup\unins*.*" /Q /F' />

InnoSetup will create them new (naming them uninst000.* ) when upgrading.

To be on the safe side, I'll check for uninstaller file names when
removing:

<remove cmd='%COMSPEC% /C if exist
"%PROGRAMFILES%\AppInstalledByInnoSetup\unins000.exe" 
"%PROGRAMFILES%\AppInstalledByInnoSetup\unins000.exe" /VERYSILENT /NORESTART /SUPPRESSMSGBOXES />

Hope this helps

- Ulli -

-------------------------------------------------------------------------
Hotel discounts, best prices: http://www.booking.com/index.html?aid=366545
-------------------------------------------------------------------------
wpkg-users mailing list archives >> http://lists.wpkg.org/pipermail/wpkg-users/
_______________________________________________
wpkg-users mailing list
wpkg-users at lists.wpkg.org
http://lists.wpkg.org/mailman/listinfo/wpkg-users



More information about the wpkg-users mailing list