【问题标题】:Deploy Qt ODBC application部署 Qt ODBC 应用程序
【发布时间】:2011-09-07 00:41:08
【问题描述】:

我的应用程序以这种方式使用 Qt SQL

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)};DBQ="+QDir::currentPath()+"/database.mdb");

其余的都是使用QSqlRelationalTableModel完成的。

现在部署阶段已经到来,应用程序在安装了 Qt (4.6.3) 的系统上运行良好,但在另一个 clean 系统上,加载数据库时出现此错误

"Driver not loaded"

我知道这与复制 ODBC 插件有关...但只是将 qsqlodbc4.dll 复制到应用程序目录和

qApp->addLibraryPath(QDir::currentPath());

不工作!!

解决办法是什么?

注意:该应用程序没有链接到驱动程序DLL,它使用Qt插件机制。

【问题讨论】:

    标签: qt deployment qt4 odbc qtsql


    【解决方案1】:

    创建这个目录结构,就像在安装了 qt 的电脑上一样。

    your.app.dir/plugins/your.plugin.folder(即 your.plugin.folder 是 sqldrivers)

    将插件复制到 your.app.dir/plugins/your.plugin_folder 下

    然后添加这段代码

    qApp->addLibraryPath( qApp->applicationDirPath() + "/plugins");
    

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-03
      相关资源
      最近更新 更多