@[TOC](QT MySQL 数据库驱动版本乱引起的问题解决方法(发布后到其它电脑上连不上数据库))
问题
在 QT 开发环境中数据库读取正常,但发布后再拷贝到其它电脑上就连不上数据库了。
一、问题的原因
QT自带的打包工具在没有将数据库驱动正确的打包
二、解决方法
1.拷贝正确的QT使用的 MySQL 驱动:qsqlmysql.dll
在打包文件夹中新建一个plugins的目录,然后再把自己电脑中QT安装目录中的数据库驱动拷贝到里面(其中应该包含正确版本的qsqlmysql.dll,这是你自己编译的或从别人那儿拷贝来的)
2.拷贝正确的MySQL数据库驱动:libmysql.dll
注意这里是你MySQL数据库相匹配的动态库,是由MySQL系统自己带的。
总结
提示:我是怎么找到这个原因的呢,呵呵,在开发环境下点击运行,然后使用360安全卫士里的任务管理器,找到你的程序,后面在下方就能看到它所调用的所有动态库、版本、路径,而我在发布好的路径里直接运行程序时,进程里并没有找到上述两个DLL,所以我就把开发环境中运行时调用的那两个dll,按上述方法拷贝过去后,一切运行正常。
感谢系统之家:http://www.winwin7.com/JC/19715.html 《怎么看一个软件exe调用了哪些DLL文件?》