2016-09-29 152 views
1

我试图做一个安装程序使用Qt安装程序框架,当软件中有可用的升级(通过我们的其余API检查),我们的软件将下载新的安装程序并运行它。Qt安装程序框架,卸载/更新离线

这当然应该先卸载以前的版本,但是,它似乎只是运行它会给你“你选择的文件夹已经存在...”的错误。

我认为使用生成的维护工具将提供一个解决方案,但是,似乎没有办法使用交换机运行此操作来执行卸载。它显示与卸载,升级......这会混淆用户的对话。

有没有办法让维护工具或其他卸载程序,所以更新可以运行?

编辑: 如果不能这样做,任何人都可以提出一个良好的跨平台安装程序框架?

回答

0

不要尝试再次运行安装程序,运行maintenancetool.exe进行更新。你可以通过脚本来维护工具这样做一个“沉默”更新:

@echo off 
maintenancetool.exe --checkupdates > checkUpdate.txt 

findstr /c:"updates" checkUpdate.txt 

if %errorlevel% == 0 maintenancetool.exe --script=script.qs 

http://doc.qt.io/qtinstallerframework/noninteractive.html