QT上位机开发(软件的发布和部署)

发布时间:2024年01月16日

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

? ? ? ? 我们在读书的时候,如果程序写好了,这个时候一般直接把exe拷贝给老师就可以了。这就是最原始的软件发布。但是,这个规则套在qt和商业上位机开发上,就显得有点不合时宜了。原因有两点,第一,我们开发的只是exe文件,它本身还要qt各个dll动态库的帮忙才能运行起来;第二,一个上位机软件不仅仅是程序本身,还依赖于配置文件、美工文件、语言包、数据库、数据库配置文件等很多内容,并不仅仅是拷贝一个exe那么简单。

? ? ? ? 今天借着学习qt的机会,我们来看下如何发布qt平台的软件。

1、利用windeployqt.exe

? ? ? ? 网上关于qt发布的内容很多,但是怎么找到qt依赖的动态库文件,其实一个程序就可以了,那就是windeployqt.exe。首先,我们在qt安装目录下面找到这个程序,接着用这个程序就可以找到exe对应的依赖库文件了。

C:\Qt\Qt5.12.5\5.12.5\msvc2017\bin\windeployqt.exe QtWidgetsApplication.exe

2、拷贝好配置文件

? ? ? ? 如果大家有印象的话,之前因为调试,我们进行配置文件加载、sqlite数据库加载的时候,这些文件都是放在和cpp同名的目录下。现在因为需要把这些软件部署到客户的电脑上面,所以就需要把这些文件copy到和exe同名的目录下,这样程序才能正确加载。

3、准备好qss文件、图片文件

? ? ? ? 之前为了美化,我们还学习qss文件。所以关于qss脚本部分的内容、图片部分的内容,也需要拷贝到exe同级目录下,不然辛辛苦苦做好的美化包就发挥不了作用了。

4、语言包

? ? ? ? 很多时候,我们开发的上位机软件不仅仅需要满足国内市场,还要满足国外市场,甚至是多语言的国家和地区,比如说东南亚地区,比如说欧洲地区等等。这个时候,我们就要学会开发多语言包,并且根据客户的选择灵活加载不同的语言包,然后重启。目前来说,最最基础的中文和英文还是需要的,因为保不齐哪天就有国外的订单飘过来。

5、第三方库

? ? ? ? 很多时候,我们的程序还需要依赖第三方动态链接库文件。就拿qt上位机来说,就可能会用到boost、opencv、pcl这些常用库。所以,我们还需要记录好这些第三方库的版本。这样发生问题之后,才可能进行回溯和改进。

6、数据库和sql文件

? ? ? ? 对于业务比较大的上位机来说,数据库是必不可少的。有条件的话,可以把数据库单独放在一个独立的服务器上面。实在没有办法了,才考虑把数据库和上位机软件安装在一起。这中间odbc安装、数据库版本的选择、sql文件的导入,最好都以文档的形式记录下来,保证所有的人按照这个文档,都可以顺利实现数据库的安装和导入。

7、日志文件目录

? ? ? ? 剩下来,最最重要的部分,就是日志文件的目录设置。软件在运行的过程当中,出问题是正常的。我们的目标应该是少出问题,或者说出了问题,现场运维的朋友也可以第一时间来解决。即使现场的朋友没有办法解决,也可以迅速拿到log文件,把这些文件发送给开发商来解决,这都是常规的处理办法和措施。所以,等软件部署完毕之后,一定要检查一下,电脑上的日志目录是否设置正确。如果无法使用todesk之类的远程工具来处理,log和录屏似乎是唯二的故障解决办法了,不过效率也会低一点。

文章来源:https://blog.csdn.net/feixiaoxing/article/details/135615201
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。