0

MySqlドライバーを必要とするQTアプリケーションがあります。QtCreatorを使用してアプリをコンパイルするための.proファイルと、Visual C ++2008Express用の.vcprojの両方があります。コードは同一であり、問​​題なくコンパイルされますが、Visual C ++ Expressによって作成された実行可能ファイルは、次の出力を提供し、ドライバー/プラグインのロードを拒否します。

QSqlDatabase:QMYSQLドライバーがロードされていませんQSqlDatabase:使用可能なドライバー:

QCoreApplicationを使用してプラグインの場所を特定しましたが、両方の実行可能ファイルのパスが同じであるように見えるため、両方にプラグインが表示されるはずです。1つは行い、もう1つは行いません。

コードは標準です。

QSqlDatabase db; db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setPort(3306); db.setDatabaseName("dbase"); db.setUserName("user"); db.setPassword("pwd"); bool ok = db.open();

QTに付属のSqlBrowserサンプルでも同じことが起こるので、コードが問題になるとは思いません。

4

2 に答える 2

0

この問題に遭遇した他の人には、これを言わなければなりません.Visual C++用のQTビルド済みバイナリを含むパッケージの1つを使用する方が、自分でビルドするよりもはるかに簡単です. また、Qt ドライバー (少なくとも 4.3 バージョン) を動作させるのは非常に困難です (一部のマシンでは魅力的に動作しますが、他のマシンでは同じコードとバイナリを使用してドライバーを見つけることができません)。専用の MySql ライブラリを使用することをお勧めします。

于 2009-11-05T15:30:00.150 に答える
0

以前にこのエラーに直面し、プラグインが自分のアプリケーションと同じ構成を使用してビルドされていないことに気付くまで、それを機能させることができませんでした (debug vs release, doh!)。

于 2009-10-29T14:47:44.083 に答える