部署Qt ODBC应用程序

时间:2011-06-02 11:41:38

标签: qt deployment qt4 odbc qtsql

我的应用程序以这种方式使用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复制到app dir和

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

不起作用!!

这是什么解决方案

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

1 个答案:

答案 0 :(得分:3)

创建此目录结构,与安装qt的电脑上的目录结构相同。

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

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

然后添加此代码

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

我希望这会有所帮助。