QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新

这篇具有很好参考价值的文章主要介绍了QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

  该系列文章主要讲解自动更新程序相关,会从自动更新原理开始,到ftp与http不同下载方式,再到到如何实现配置文件更新与安装包更新,最后做成一个完整的软件。只是经验分享,描述内容并不绝对,如有误差欢迎指正。以ftp下载,配置文件更新模式为例,实现效果如下:
  更新模式常态
QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新
QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新
  静默更新模式
QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新

QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新


一、自动更新原理

  远端服务器存放待更新的内容,本地启动程序,程序启动前将到远端检查更新内容,需要更新则下载更新内容到本地,替换本地文件完成更新,启动程序。更新流程如下。

1、配置文件更新

1-1、更新步骤

  1. 加载本地配置文件获取获取保存的版本号。
  2. 每次启动程序,首先从服务器请求最新的版本信息文件(包括文件名,版本号,文件下载地址,文件类型)。
  3. 解析下载的文件获取服务器版本号,与本地版本号进行比较,如果高于本地,就下载文件。
  4. 更新文件(将下载的文件更换或添加到程序目录下)
  5. 更新本地配置文件

1-2、配置文件内容

<?xml version="1.0" encoding="utf-8"?>  
<filelist>  
 <file name="qdirect2dd.dll" dir="/plugins/platforms" version="1.1.0"/> 
 <file name="qminimald.dll" dir="/plugins/platforms" version="1.1.0"/> 
 <file name="qoffscreend.dll" dir="/plugins/platforms" version="1.1.0"/>
 <file name="qwindowsd.dll" dir="/plugins/platforms" version="1.1.0"/>
 <file name="Qt6Cored.dll" version="1.1.0"/> 	
 <file name="Qt6Guid.dll" version="1.1.0"/> 	
 <file name="Qt6Widgetsd.dll" version="1.1.0"/> 	

 <file name="MXYFlowChart.exe" version="1.1.1"/>
</filelist>  

2、安装包更新

1-1、更新步骤

  1. 加载本地配置文件获取获取保存的版本号。
  2. 每次启动程序,首先从服务器请求最新的版本信息文件(包括版本号,安装包下载地址,程序名称)。
  3. 解析下载的文件获取服务器版本号,与本地版本号进行比较,如果高于本地,就下载压缩包。
  4. 解压缩程序压缩包
  5. 更新本地版本号,启动安装包程序,退出当前自动更新程序

3、更新程序配置文件内容

[software]
style=2
downloadmodel=1
downloadtype=2

[download]
software_name=MXYFlowChart
url=ftp://192.168.8.4:21/download/MXYFlowChart
local_path=E:/Program code/qt/updatatest/
install_package_path = E:/Program code/qt/updatatest/

[ftpserver]
username=lenovo
password=123

[windowstyle]
title=萌学园更新程序
icon=:/update/Resource/update.png
version=V1.0.1

二、ftp与http模式介绍

  http模式使用QT自带的QNetworkAccessManager类,因为使用qt6.4开发,qt不支持ftp模式,所以ftp模式使用第三方库ftplib进行二次开发。

总结

本文只做效果展示与基本实现思路,后续会继续更新具体实现。
本文只是经验分享,描述内容并不绝对,如有误差欢迎指正。

如果此文帮助到你( •̀ ω •́ )✧,动动小手点个赞可好O(∩_∩)O。文章来源地址https://www.toymoban.com/news/detail-498395.html

原创文章,转载请标明本文出处。

到了这里,关于QT 简单实现自动更新程序(一) 效果展示 功能描述 ftp模式 http模式 配置文件更新 安装包更新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包