【问题标题】:QT - PostgreSQL plugin errorQT - PostgreSQL 插件错误
【发布时间】:2015-05-29 08:35:33
【问题描述】:

我有一个应用程序,它应该连接到数据库。 在linux下我没有问题,但在windows下 - >我必须添加到系统“路径”位置,放置QT环境(C:/QT/Tools/QTCreator/bin)否则它不起作用并显示如下错误。 如果我也将 exe 文件放在 pendrive 上,id 不起作用

我想把这个应用程序发送给我的朋友,他们不应该安装 QT 环境而只运行这个应用程序。

我的随身碟上的目录

/ 应用程序 插件(目录) -qsqlpsql.dll -sqldrivers(目录) --qsqlpsql.dll

我该怎么办?我哪里弄错了?

专业文件:

QT       += core gui sql

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = NZP
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui
win32{
LIBS += -L"C:/Program Files/psqlODBC/0903/bin"
}
RC_FILE += Info.rc

在我的 main.cpp 中:

QApplication a(argc, argv);
   qDebug()<<QCoreApplication::applicationDirPath();
   a.addLibraryPath(QCoreApplication::applicationDirPath());
   a.addLibraryPath(QCoreApplication::applicationDirPath()+"/plugins");
   qDebug()<<a.libraryPaths();

    MainWindow w;
    w.show();

    return a.exec(); 

如果我在安装了 QT 的 Windows 下运行这个应用程序——everythink 是正确的,但如果我将它移动到 pendrive 上或在没有 QT 框架的机器下运行——我会出错:

QSqlDatabase: QPSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC3 QODBC QPSQL QPSQL7

无法打开数据库连接。指定的驱动程序无效。

我在互联网上看过,但现在还没有明智的解决方案 帮忙!

【问题讨论】:

  • 90% 你的 PSQL 驱动看不到libpq.dll

标签: c++ windows qt postgresql


【解决方案1】:

啊!我发现了问题!

1。 你在你的安装目的地有这个文件夹结构:

yourap.exe
-plugins -> folder
--sqldrivers -> folder
and you have to copy from migws/bin  not QT/Tools/Creator/bin! 
---qsqlpsql.dll

在你的应用目录中你必须复制

libeay32.dll

和你一起发现:

C:\Program Files\psqlODBC\0903\bin (http://www.postgresql.org/ftp/odbc/versions/msi/   - ii used https://ftp.postgresql.org/pub/odbc/versions/msi/psqlodbc_09_03_0300.zip)

在您的应用程序 (main.cpp) 中,只需添加路径:

QApplication a(argc, argv);
a.addLibraryPath(QCoreApplication::applicationDirPath()+"/plugins/");
a.addLibraryPath(QCoreApplication::applicationDirPath());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多