[Qt-interest] redistribute QT application for Windows
David Ching
dc at remove-this.dcsoft.com
Thu Apr 22 00:25:23 CEST 2010
"Nikos Chantziaras" <realnc at arcor.de> wrote in message
news:hqnse4$175$1 at eple.troll.no...
> That might be duplicating what the user already has on his system. Also,
> if you put those DLLs in your app's folder, and Microsoft issues a
> security update for the system-wide DLLs through Windows Update, your app
> will stay buggy since it's using your bundled DLLs and not the system
> global, updated DLLs.
>
No, the standard manifest insures that any updated DLL's in the Windows SxS
folder will be used instead of the ones in the Qt app's folder. This is
standard app-local installation behavior. You have to jump through a
non-documented manifest hack to continue using the outdated DLL's in the Qt
app's folder, if there are newer ones in SxS.
> Silently installing vcredist_x86.exe (it should have such a "silent"
> option) is the best way. It will only install the DLLs if they're not
> already there, or if they're old and outdated, and it will not replace
> them if they're newer.
But there are problems with using vcredist_x86.exe. First is it requires
Admin priviledge. (Using app local installation results in xcopy deployment
not requiring Admin priviledge.) Second, it adds its own Add/Remove Program
entry making it prone to the user not knowing what it is and mistakenly
uninstalling it separately from your app, rendering your app useless and
likely a Tech Support incident. Third, it requires altering the user's
global system setup, making it unsuitable for e.g. distribution of a
portable app on a USB key.
For this reason, either .msi merge modules or app-local deployment are
preferable to vcredist_x86.exe. About the only thing positive about
vcredist is it is probably the easiest install implementation.
-- David
More information about the Qt-interest-old
mailing list