Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)

使用Qt自带的系统windeployqt打包

1、在数据库的位置加上#if 1和#endif之间代码,如下并注意修改setDataName;

    if(QSqlDatabase::drivers().isEmpty())
        //提示报错
       qDebug()<<"no database drivers found";
    //驱动名称
    m_db= QSqlDatabase::addDatabase("QSQLITE");
#if 1
     //避免发给别人时要下载数据库,获取数据库路径
    //最终发布时,加上“Data.db”,将Data.db放入路径"D:/qt5/build-guan_li_xi_tong-Desktop_Qt_5_12_10_MinGW_64_bit-Debug/debug"即可
    auto str = QCoreApplication::applicationDirPath()+"/Data.db";
    qDebug()<

可在下图中的位置选择版本

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第1张图片

2、右键,点击重新构建

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第2张图片

3、 新建文档,将exe放入新建文档,注意路径中不要包含中文 

 4、在此文件位置搜索打开cmd

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第3张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第4张图片

5、在cmd中输入win按下tab键加空格,并且将新建文档里的exe文件拖到cmd上如图1

按下回车键,得到图2,新建文档里如图3

 Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第5张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第6张图片

 6、此时还缺少库文件,在qt5的bin中搜索lib,将三个文件复制exe所在的新建文档里,再将数据库所在的文件也复制到新建文档里,点击新建文档里的exe就可以打开了。

 Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第7张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第8张图片

 

7、可以用Enigma Virtual Box软件将上面打包的所有文件打包为一个exe执行文件

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第9张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第10张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第11张图片

Qt学习:打包Qt程序和数据库(debug版,比release版占内存大,release版同样适用)_第12张图片

你可能感兴趣的:(笔记,qt,学习,数据库开发)