[gelöst] Treiber wird auf anderem Rechner nicht gefunden

Alles rund um die Programmierung mit Qt
Antworten
mlc
Beiträge: 16
Registriert: 7. September 2006 10:44

[gelöst] Treiber wird auf anderem Rechner nicht gefunden

Beitrag von mlc »

Hi,

ich habe ein Programm geschrieben was ein Select auf eine Firebird Datenbank macht. Auf meinem Rechner funktioniert auch alles wunderbar.
Doch wenn ich das Programm jetzt auf einem anderen Computer ausführe auf dem QT nicht kompliert wurde klappt es nicht.

Nach dem ich die benötigten dll's (QtGui4.dll, QtCore4.dll, QtSql4.dll, mingwm10.dll) in das Verzeichnis der exe kopiert habe starte das Programm zwar, aber es kommt die Fehlermeldung "Driver not Availabe".
Habe nun auch schon noch die qsqlibase.dll mit dazu gelegt, kein Erfolg.

Weiß jemand was ich tun muß damit das Programm auch auf anderen Rechner läuft?? Was ich wo hinkopieren muß??

Bin für jeden Tipp dankbar!

MfG
mlc
Zuletzt geändert von mlc am 21. September 2006 10:01, insgesamt 1-mal geändert.
isifloh
Beiträge: 37
Registriert: 31. August 2006 09:40

Beitrag von isifloh »

hi

das problem ist das die datenbank treiber plugins sind. du musst dem computer nun noch mitteilen wo er die plugins findet. hierzu musst du diese auch noch auf den zielcomputer kopieren

QCoreApplication hat eine methode addLibraryPath mit der du den pfad zu den plugins mitteilen kannst.

wenn dein code also ungefähr so aus sieht.

int main(int argc, char *argv[])
{
QApplication app(argc,argv);
// Dann dies einfügen
app.addLibraryPath("\pfad...");
.....

}

wenn alle dlls (QtCore, sowie die plugins) mit der exe in einem verzeichnis sind sollte es gehen wenn du
app.addLibrarayPath(app.applicationDirPath ());

mfg
mlc
Beiträge: 16
Registriert: 7. September 2006 10:44

Beitrag von mlc »

Hi,

habe es so probiert wie beschrieben doch leider ohne erfolg.

Code: Alles auswählen

int main(int argc, char *argv[])
{
	QApplication app(argc, argv);
    app.addLibraryPath(app.applicationDirPath ()); 
Im Verzeichnis liegen folgende Dateien. QtGui4.dll, QtCore4.dll. QtSql4.dll, mingwm10.dll, gds32.dll und qsqlibase.dll + die exe.

Wenn ich das Programm starte bekomme ich immer noch die Meldung "Driver not Availabe".
Hab ich vielleicht eine Datei vergessen??

Gruß mlc
mlc
Beiträge: 16
Registriert: 7. September 2006 10:44

Beitrag von mlc »

Hi,

das Problem hat sich gelöst. :D
Der SQL Treiber muß noch im Unterverzeichnis sqldrivers liegen.

Danke für die Hilfe!

MfG
mlc
Antworten