【问题标题】:Qt QMYSQL "Driver not loaded" on WindowsWindows上的Qt QMYSQL“未加载驱动程序”
【发布时间】:2016-02-23 14:00:53
【问题描述】:

在尝试连接到 mysql 数据库时,我收到以下错误:未加载驱动程序。

我已经创建了一个安装程序,其中包含所有需要的 DLL 文件(libmysql.dll、plugins/qsqlmysql.dll、QT5Sql 等)。虽然在新安装的 Windows 10 虚拟机中测试程序一切正常,但在另一台 PC 上,同样使用 Windows 10,我得到驱动程序未加载错误。

我使用了depends.exe 来检查所有需要的DLL 是否都存在并且它们都存在。

根据 QSqlDatabase::drivers() 没有可用的数据库驱动程序。

是否有可能获得更有用的错误描述?

【问题讨论】:

  • 你应该将 MySQL 安装到“不同的 PC”

标签: c++ mysql windows qt dll


【解决方案1】:

您的qsqlmysql.dll 似乎是您的 sql 插件,它与您的应用程序位于同一文件夹中,而它应该位于 sqldrivers 文件夹中。

你可能需要做的事情:

  • qsqlmysql.dlllibmysql-dll(和依赖项)移动到插件子文件夹
  • 尝试重新启动,您可能希望使用 Qt 用于加载的库路径进行调试。

如果这可以解决问题,请修复您的安装程序。

您可能想查看 http://doc.qt.io/qt-5/deployment-plugins.html 以部署插件

【讨论】:

  • qsqlmysql.dll 已经在 sqldrivers 文件夹中,主文件夹中的文件只是一个副本,以测试它是否有影响。我应该在创建屏幕截图之前将其删除,对不起!
  • 您是否尝试过使用依赖于插件来确保它可以加载?只是为了确保您嵌入的实际 mysql dll 就足够了。通常的调查方法通常是跟踪(调试消息)以查看它试图加载的内容以及失败的时间和时间......没有更多,很难提供准确的输入
  • 是的,我试过了,非常感谢你的努力!!我自己找到了答案。
【解决方案2】:

问题是由于杀毒软件默默地阻止了qsqlmysql.dll。防病毒软件确实将文件记录为病毒,但从未显示信息消息。

【讨论】:

    猜你喜欢
    • 2020-08-02
    • 1970-01-01
    • 2016-09-22
    • 2016-11-19
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 2016-01-14
    • 1970-01-01
    相关资源
    最近更新 更多