plugin dlls werden unter absolutem Pfad gesucht ?

Alles rund um die Programmierung mit Qt
Antworten
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

plugin dlls werden unter absolutem Pfad gesucht ?

Beitrag von noirabys »

Hallo zusammen!
ich habe ein Programm erstellt das mysql benutzt und wollte dieses nun auf einem anderen Rechner (auch winxp) ausprobieren .
Alle libs in das Verzeichnis (aus dem das executable gestartet wurde) kopiert und erhalte die Fehlermeldung: Driver not loaded
Dann habe ich festgestellt, daß das ganze nur funktioniert wenn ich ein Verzeichnis mit dem gleichen absoluten Pfad anlege wie auf meinem Entwicklungs-PC. ( D:\qt\plugins\sqldrivers ) !
Wie kann man den Fehler beheben ?

Dann habe ich noch feststellen müssen das die GUI-Elemente alle andere Farben haben ?
Die Farben wurden durch
Form->setPalette(palette); eingestellt und erscheinen auf dem Entwicklungs PC auch richtig ?!
Ich bin ratlos.

Wie macht man den am besten eine Installation des eigenen Programms auf einem anderen Rechner ?

Ich hoffe jemand kann helfen :D
Vielen Dank und Grüße
noirabys
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wenn Dein Plugin in <executable-path>/sqldrivers liegt, sollte es auch gefunden werden. Ein Image-Plugin muss demnach unter <executable-path>/imageformats liegen. Also die gleichen Verzeichnisnamen wie in <qt-4-src>/plugins/

Beim anderen habe ich derzeit keine Ahnung.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

funktioniert jetzt :)

Beitrag von noirabys »

Danke für die schnelle Antwort !
die libs werden dann gefunden ...

merci
Grüße
noirabys
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

Erscheinungsbild unter Winxp

Beitrag von noirabys »

Also es sieht so aus als würde er auf meinem Entwicklungsrechner
standardmässig den WindowsStyle nehmen und auf dem anderen Rechner den WindowsXpStyle.
Setzte ich den Style dann selber auf WindowsStyle nimmt er die Farbpalette , allerdings sieht das ganze immer noch nicht 100% wie auf
dem Entwicklungsrechner aus !?

Grüße
noirabys
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

Beitrag von noirabys »

Hallo nochmal !
ich habe jetzt versucht das ganze im Debug Modus zu bauen und erhalte nun wieder db open failed:Driver not loaded Driver not loaded
ich habe ein unterverzeichnis erstellt sqldrivers
und libmysql.dll und qsqlodbc.dll dort hingelegt und trotzdem scheint
er sie nicht zu finden !?
Benötigt man um das ganze im Debug Modus laufen lassen zu können auch eine debug version der libmysql.dll ? ( wo bekommt man diese her ?)
wäre nett wenn mir jemand helfen könnte, da mein Programm abschmiert und ich ohne die Debug-Version keine chance habe die Ursache herauszufinden!

Danke und Grüße
noirabys
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Lösche mal vorsichtshalber HKCU\Software\Trolltech\OrganizationDefaults aus der Registry. Keine Angst, wird on demand neu aufgebaut. Wenn Du Dich dort etwas umsiehst findest Du ggf. auch deine zwei Dlls und den zughörigen Build-Key (der evtl. nicht passt, deshalb sollst Du es mal löschen)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

Beitrag von noirabys »

hallo!
habe gerade deinen Vorschlag ausprobiert , aber keinen Unterschied bemerken können.
Die Registry EInträgen werden beim start sofort neu aufgebaut
und sehen identisch aus :

noch irgendwelche ideen !?
Dateianhänge
regedit.jpg
regedit.jpg (165.64 KiB) 5533 mal betrachtet
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Qt 4.0.1 ? MSVC oder MinGW? Mit msvc kann es dort nicht gehen, geht erst wirklich korrekt mit dem letzten Patch für 4.2.x
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

Beitrag von noirabys »

Hallo nochmal !
ich compiliere mit mingw ...

grüße
noirabys
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Nimm trotzdem nicht 4.0.1 sondern was aktuelles...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
noirabys
Beiträge: 16
Registriert: 25. Januar 2006 07:33
Wohnort: Aachen
Kontaktdaten:

Beitrag von noirabys »

Hallo !
ich habe jetzt die 4.2.1 installiert.
Wenn ich nun die Debug version starte gibt mir die Console aus, dass er den ODBC treiber nicht laden könnte :

QSqlDatabase: QODBC driver not loaded
QSqlDatabase: available drivers: QSQLITE
und auch der mysql treiber wird nicht gelistet.

im unterverzeichnis sqldrivers liegen die Dateien:
libmysql.dll
qsqlite.dll
qsqlodbc.dll

Noch eine Idee was ich falsch mache ?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

qsqlite.dll und qsqlodbc.dll müssen auch im Debug-Modus erstellt werden. Ansonsten werden sie nicht geladen. In der Registry siehst Du ja ob dies der Fall ist.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

qt 4.2

Man kann die plug in auch statisch holen.... wen qt statisch kompiliert ist

eine exe mit allem drinnen ohne installer!

ich habe mac eine statisch und window eine shared und eine statich kompiliert qt4.2..... aber das unten geht bei mir nur unter mac...

window ist wie unter http://wiki.qtcentre.org/index.php?titl ... on_Windows builded....

#include <QSqlDriverPlugin>
#include <QtPlugin>
Q_IMPORT_PLUGIN(qsqlite)
Q_IMPORT_PLUGIN(qsqlodbc)
/////pro file // QTPLUGIN += qsqlite qsqlodbc

Warum dass es nur unter mac funktioniert kann ich mich nicht erklahren .... dabei kosten window ja das doppelte... an plege wartung ecc...


http://doc.trolltech.com/4.2/qtplugin.html
.........................
speack português italiano deutsch english castellà qt
Antworten