[gelöst] Qt 4.4.0 WinXP MySQL Driver not loaded

Alles rund um die Programmierung mit Qt
Antworten
KartoffelKiffer
Beiträge: 101
Registriert: 27. Februar 2008 15:59

[gelöst] Qt 4.4.0 WinXP MySQL Driver not loaded

Beitrag von KartoffelKiffer »

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
Zuletzt geändert von KartoffelKiffer am 19. Juni 2009 14:07, insgesamt 2-mal geändert.
KartoffelKiffer
Beiträge: 101
Registriert: 27. Februar 2008 15:59

Beitrag von KartoffelKiffer »

Hallo,

aus welchem Grund auch immer funktioniert es jetzt. Habe alles noch einmal rückgängig gemacht und bin erneut alle Schritte durchgegangen.

Nun sieht die Struktur in der Registry auch anders aus: Es existiert in hkcu/Software/Trolltech nun ein weiterer Ordner Qt Factory Cache 4.4. Der Plugin Cache besteht weiterhin wie zuvor.

Vielleicht hilft mein Beitrag ja bei der Suche und Beseitigung selbiger Probleme.




Mfg KK
Zuletzt geändert von KartoffelKiffer am 19. Juni 2009 14:07, insgesamt 1-mal geändert.
Zonk
Beiträge: 51
Registriert: 17. September 2006 15:28
Kontaktdaten:

Beitrag von Zonk »

Ah, ihc glaub das Kenne ich vom qwt kompilieren und installieren:

Damals habe ich mir notiert:

.
hilfestellungen:
Wenn einmal falsche Plugins kompiliert wurden, trägt QT diese in der Windowsregistry als ungültig ein, d.h. selbst danach richtig kompilierte Versionen werden nidht mehr geladen.
Hierzu inder Registry den Zweig
"HKEY_CURRENT_USER\Software\trolltech\OrganizationDefaults\Qt Plugin Cache 4.2.false" oder sinngemäß (je nach QT version) löschen und danch den QT designer bzW das komplette MSVC neu starten.
es wird dann das Pluginverzecihnis neu geparsed und die registryeinträge neu ( und korrekt) angelegt.
Im übertragenene Sinne dürfte das auch für dich zutreffen.

Viele Grüße, Torben
KartoffelKiffer
Beiträge: 101
Registriert: 27. Februar 2008 15:59

Beitrag von KartoffelKiffer »

Hallo,

leider wohl nicht ganz. Wie schon geschrieben
Das auch bei jedem Start der Applikation, wenn ich den Ordner Trolltech aus der Registry entferne.



Mfg KK
Antworten