QT SQL Driver wird nicht geladen ??
QT SQL Driver wird nicht geladen ??
Hab eine Anwendung auf einem Zielrechner mit QT SQL ,
Fehlermeldung: SQL Driver not Loadet.
Da wo Qt Installiert ist läuft es.
SQL = MS SQL /ODBC
Hab mittlerweile alle QT dll aus ...\qt\bin auf das Zielsystem kopiert(system 32), auch qt\plugin\sqldrivers.
Dazu nochmal alles ins Anwendungsverzeichniss ^^ .
Und im Anwendungsverzeichniss \plugins\sqldrivers\"treiber" und zur Sicherheit nochmal im Anwendungsverzeichnis \sqldrivers\"treiber".
DependencyWalker von QR sagt
Kein SQL Treiber verfügbar,
wintab32.dll fehlt, nur kommt die weder von Qt noch von MS , auch hab ich die auf dem entwicklungssystem nicht, ob die wintab32 damit was zu tun hat weiß ich nicht.
in der .pro Datei ist QT += sql eingetragen.
Einer eine Idee ?
Fehlermeldung: SQL Driver not Loadet.
Da wo Qt Installiert ist läuft es.
SQL = MS SQL /ODBC
Hab mittlerweile alle QT dll aus ...\qt\bin auf das Zielsystem kopiert(system 32), auch qt\plugin\sqldrivers.
Dazu nochmal alles ins Anwendungsverzeichniss ^^ .
Und im Anwendungsverzeichniss \plugins\sqldrivers\"treiber" und zur Sicherheit nochmal im Anwendungsverzeichnis \sqldrivers\"treiber".
DependencyWalker von QR sagt
Kein SQL Treiber verfügbar,
wintab32.dll fehlt, nur kommt die weder von Qt noch von MS , auch hab ich die auf dem entwicklungssystem nicht, ob die wintab32 damit was zu tun hat weiß ich nicht.
in der .pro Datei ist QT += sql eingetragen.
Einer eine Idee ?
Hast du das schon gelesen?
http://doc.trolltech.com/4.6/deployment ... qt-plugins
http://doc.trolltech.com/4.6/deployment ... qt-plugins
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Wie ich schon geschrieben hatte \plugins\sqldrivers"treiber" im Arbeitsverzeichniss.Christian81 hat geschrieben:Das Verzeichnis muss sqldrivers heissen!
Und wenn das sql-Plugin noch andere libs als Dependencies braucht und du sie nicht mitlieferst kann es nichts werden -> mit Dependency Walker was das Plugin braucht.
Und mittlerweile liegen alle qt dll auf dem Zielrechner , weitere Plugins werden nicht benötigt.
Lege ich die Plugings unter den gleichen Pfad wo sie beim PC liegen wo ich Compiliere klappt alles .
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Verstehe jetzt nicht was du meinst ,Christian81 hat geschrieben:Und jetzt nochmal auf Deutsch bitte...mdmr hat geschrieben: Wie ich schon geschrieben hatte \plugins\sqldrivers"treiber" im Arbeitsverzeichniss.
ich habe im Arbeitsverzeichnis des Programms den Ordner Plugins erstellt und in diesem Ordner den Ordner sqldrivers in welchem die Treiber liegen.
Zur Sicherheit nochmal im Arbeitsverzeichnis des Programms den Ordner sqldrivers.
Lege ich die Treiber jedoch in genau den gleichen Pfad wie auf dem System wo ich kompiliere c:\qtdir\plugins\sqldrivers klappt es.
So langsam frage ich mich überhaupt ob das mit QT für Produktivumgebungen geignet ist .
Für die Verbindung:
db->setDatabaseName(QString("DRIVER={SQL Server Native Client 10.0};SERVER=%1;DATABASE=%2;Uid=%3;Pwd=%4").arg(daten->getSserver()).arg(daten->getSdata()).arg(daten->getSname()).arg(daten->getSpass()));
ist nicht das gleiche wie =
db->setDatabaseName("DRIVER={SQL Server Native Client 10.0};SERVER=Lappi\\SQLexpress;DATABASE=ipwd;Uid=user;Pwd=pass");
und auch die Version :
QString vstring;
vstring.push_back("DRIVER={SQL Server Native Client 10.0};SERVER=");
vstring.push_back(daten->getSserver());
vstring.push_back(";DATABASE=");
vstring.push_back(daten->getSdata());
vstring.push_back(";Uid=");
vstring.push_back(daten->getSname());
vstring.push_back(";Pwd=");
vstring.push_back(daten->getSpass());
QMessageBox::information(0,"Fehler",vstring);
db->setDatabaseName(vstring);
Führt zu keinem Ergebniss , obwohl mir die Mesagebox voher den richtigen String ausgibt.
Auch über den DSN :
db->setHostName(daten->getSserver());
db->setDatabaseName(daten->getSdata());
if(daten->getBcred()){
db->setUserName(daten->getSname());
db->setPassword(daten->getSpass());
scheint keine Verbindung möglich nur vom Rechner wo der SQL läuft.
Die einzige Funktionierende Version ist die zweite= db->setDatabaseName("DRIVER={SQL Server Native Client 10.0};SERVER=Lappi\\SQLexpress;DATABASE=ipwd;Uid=user;Pwd=pass");
Was für die Praxis nicht geeignet ist.
Vom MAc scheint überhaupt keine Verbindung zum MS SQL Möglich zu sein mit QT.
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Nein tut es nicht, hatt ich auch geschrieben.Christian81 hat geschrieben:Wenn im Verzeichnis in dem das executable liegt ein der Ordner sqldrivers vorhanden ist (und darin das entsprechende Plugin) dann funktioniert es auch. Hat franzf aber schon im zweiten Post gesagt.
Sonst hätte ich das Topic nicht eröffnet, wenn ich mich nicht schon durch die DOKU gearbeitet .
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Danke für deinen Konstruktiven und wichtigen Beitrag.Christian81 hat geschrieben:Dann geht es eben nur bei Dir nicht und bei allen anderen *lol*
Wenn du keine Lußt hast dich mit Problemstellung auseinander zu setzten, solange es nicht über RTFM und "Google dir einen " hinausgeht, antworte doch auf keine Topics.
Aber Topic kann eigentlich zu.
War ein Versuch mit QT sich die Arbeit 2 x zu machen für MAC und MS Clients, aber anscheinend funktioniert das noch nicht alles wirklich mit Qt.
Software > Qt > Deinstallieren.
Visual STudio mit MFC und XCOde an, das funktioniert,und ist gut Dokumentiert.
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Bitte - schreib ein kleines Testprogramm und wir werden sehen dass es geht. Und da es angeblich nur bei dir nicht funktioniert und du lernresistent bist... viel Spass mit MFCmdmr hat geschrieben:Danke für deinen Konstruktiven und wichtigen Beitrag.Christian81 hat geschrieben:Dann geht es eben nur bei Dir nicht und bei allen anderen *lol*
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Ich brauch kein Testprogramm schreiben, da ich schon ein Programm geschrieben habe, was genau so nicht Funktioniert wie im Manual beschrieben bei den sqltreibern.Christian81 hat geschrieben:Bitte - schreib ein kleines Testprogramm und wir werden sehen dass es geht. Und da es angeblich nur bei dir nicht funktioniert und du lernresistent bist... viel Spass mit MFCmdmr hat geschrieben:Danke für deinen Konstruktiven und wichtigen Beitrag.Christian81 hat geschrieben:Dann geht es eben nur bei Dir nicht und bei allen anderen *lol*
Und Lernresistent bin ich mit Sicherheit nicht, scheinbar bist du aber Leseresistent .......
Und um das nochmal auf den Punkt zu bringen QT war ein Ansatz sich die Arbeit zu sparen mit 2 Frameworks zu arbeiten. Wenn bei solch Trivialen Dingen aber schon die Informationsbeschaffung scheitert wie soll das bei komplexen Dingen erst aussehen.
Einfache Dinge wie die Bereitstellung, für den String der zum SQL geht Variablen zu verwenden oder mit dem MAC am MS SQL sich zu Auhtentifizieren scheitern und scheinen nicht lösbar.
Sorry aber das ist nicht Praxistauglich. MFC funktioniert super und Informationsbeschaffung funktioniert auch dazu wesentlich umfangreicher und kostet einen Bruchteil von QT.
Und wenn ich zu dem Thema Google schein ich nicht der Einzige zu sein bei dem das mit den SQL Treibern nicht klappt....
Also Thema kann zu und Forenacount bitte löschen.......