2017-05-30 147 views
0

編輯#2

它的工作原理是,我第一次安裝postgres 64bit,而Qt使用MinGW 32位。QT:驅動程序未加載,但驅動程序存在

編輯

answer通過zapredelom鏈接,我安裝的Postgres 9並添加到PATH的binlib目錄。可以肯定的是,我也重啓了機器,但沒有任何改變。 QT_DEBUG_PLUGINS=1不給我額外的調試信息。


我在運行時出現此錯誤:

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

由於本身顯示錯誤,Postgres的驅動程序已經存在。事實上,在C:\Qt\5.8\mingw53_32\plugins\sqldrivers下有qsqlpsql.dllqsqlpsqld.dll。 我還沒有構建它,並且我沒有在這臺機器上安裝Postgres(我在我的Linux操作系統上測試並在Windows 8.1 VM上部署),驅動程序在安裝QT後已經存在。

有什麼問題?

+0

https://stackoverflow.com/questions/26507353/qpsql-driver-not-loaded-qt你試過這個aproach? – zapredelom

+0

@zapredelom:現在是,它不起作用。看到我更新的答案。 –

+0

@MarcoSulla考慮自己創建一個答案,而不是將其作爲編輯添加到原始問題中。 – m7913d

回答

0

該驅動程序不工作,因爲它沒有找到依賴項(它應該取決於libpq.dll),並且當您運行它時,該插件無法找到所需的dll。如果您使用Windows,只需嘗試使用qsqlpsql.dll的dependencywalker進行檢查。

你可以直接把你的libpq.dll放到你的application exe文件夾中。

相關問題