[gelöst] Qt 4.4.0 WinXP MySQL Driver not loaded
Verfasst: 16. Juni 2008 10:58
Hallo,
es ist mir schon fast peinlich diese Frage zu stellen, aber mein Programm will einfach nicht laufen.
Auf meiner Entwicklungsmaschine läuft ein WinXP mit MySQL 5.0. Erstelle ich meine Applikation nun als Release und möchte diese auf einem anderen Rechner (in meinem Falle einen mit Win2000) laufen lassen, so kommt die altbekannte Fehlermeldung "Driver not loaded".
Ich habe mir Qt mit MySQL-Support erstellen lassen. Doch schlägt das Erstellen bei den 3rdparty-libraries wie png-,gif,-jpeg...support fehl. Es wird allerdings eine projects.vbproj im Hauptverzeichnis von Qt erstellt, welche ich mit meiner Entwicklungsumgebung Visual Studio 2005 laden kann. Ein kompilieren von qmysql4 gelingt und es wird eine qsqlmysql4.dll im Verzeichnis C:\Programme\Qt\4.4.0\plugins\sqldrivers erstellt.
Auf dem Zielrechner habe ich nun im Verzeichnis der .exe einen Ordner sqldrivers erstellt und darin die qsqlmysql4.dll kopiert. Beim Starten der Applikation wird auch in der Registry eine Struktur in hkcu/Software/Trolltech/OrganizationDefaults/Qt Plugin Cache 4.4.false/d:/wrk/prog/sqldrivers angelegt, worin ein Eintrag vom Typ REG_MULTI_SZ mit Namen qsqlmysql4.dll und den Daten "0 1 unknown 2008-06-16T09:40:14" entsteht. Das auch bei jedem Start der Applikation, wenn ich den Ordner Trolltech aus der Registry entferne.
Nochmal zur vbproj-Datei: Wenn ich das Projekt qsqlmysql auswähle und mir die Eigenschaften anzeigen lasse, so stehen dort auch alle Abhängigkeiten zu MySQL. Die include-Verzeichnisse zeigen auf das include-Verzeichnis von MySQL, zusätzliche Biblitiotheksverweise zeigen auf das lib-Verzeichnis und zusätzliche Abhängigkeiten explizit auf die libmysql.lib im lib/opt-Verzeichnis.
Gibt es jetzt etwas, das ich evtl. noch nicht bedacht habe, oder angewendet habe? Wie erwähnt läuft mein Programm mit all diesen Vorklärungen immernoch nicht und ich hoffe es kann mir geholfen werden.
PS: Die libmySQL.dll liegt auf dem Zielrechner im selben Verzeichnis wie die exe des Programms.
Mfg KK
es ist mir schon fast peinlich diese Frage zu stellen, aber mein Programm will einfach nicht laufen.
Auf meiner Entwicklungsmaschine läuft ein WinXP mit MySQL 5.0. Erstelle ich meine Applikation nun als Release und möchte diese auf einem anderen Rechner (in meinem Falle einen mit Win2000) laufen lassen, so kommt die altbekannte Fehlermeldung "Driver not loaded".
Ich habe mir Qt mit MySQL-Support erstellen lassen. Doch schlägt das Erstellen bei den 3rdparty-libraries wie png-,gif,-jpeg...support fehl. Es wird allerdings eine projects.vbproj im Hauptverzeichnis von Qt erstellt, welche ich mit meiner Entwicklungsumgebung Visual Studio 2005 laden kann. Ein kompilieren von qmysql4 gelingt und es wird eine qsqlmysql4.dll im Verzeichnis C:\Programme\Qt\4.4.0\plugins\sqldrivers erstellt.
Auf dem Zielrechner habe ich nun im Verzeichnis der .exe einen Ordner sqldrivers erstellt und darin die qsqlmysql4.dll kopiert. Beim Starten der Applikation wird auch in der Registry eine Struktur in hkcu/Software/Trolltech/OrganizationDefaults/Qt Plugin Cache 4.4.false/d:/wrk/prog/sqldrivers angelegt, worin ein Eintrag vom Typ REG_MULTI_SZ mit Namen qsqlmysql4.dll und den Daten "0 1 unknown 2008-06-16T09:40:14" entsteht. Das auch bei jedem Start der Applikation, wenn ich den Ordner Trolltech aus der Registry entferne.
Nochmal zur vbproj-Datei: Wenn ich das Projekt qsqlmysql auswähle und mir die Eigenschaften anzeigen lasse, so stehen dort auch alle Abhängigkeiten zu MySQL. Die include-Verzeichnisse zeigen auf das include-Verzeichnis von MySQL, zusätzliche Biblitiotheksverweise zeigen auf das lib-Verzeichnis und zusätzliche Abhängigkeiten explizit auf die libmysql.lib im lib/opt-Verzeichnis.
Gibt es jetzt etwas, das ich evtl. noch nicht bedacht habe, oder angewendet habe? Wie erwähnt läuft mein Programm mit all diesen Vorklärungen immernoch nicht und ich hoffe es kann mir geholfen werden.
PS: Die libmySQL.dll liegt auf dem Zielrechner im selben Verzeichnis wie die exe des Programms.
Mfg KK