Visual Studio C++ + Qt Plugin "Datenbank Error Connection"

Alles rund um die Programmierung mit Qt
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Visual Studio C++ + Qt Plugin "Datenbank Error Connection"

Beitrag von galilio »

Ich arbeite in eine der projekte mit Datenbanken (Access Datenbank).
In dieses Datenbanken werden nur Messdaten geschrieben.
Bei mir auf meinen PC funktioniert alles einwandfrei.
wenn ich dieses projekte in eine andere PC teste dann bekomme ich keine Verbindung zu Datenbank "Seh bitte Anhang"


Wie gesagt auf meinen PC könnte ich immer testen und sobald ich in einem anderen PC ausprobiere bekomme ich die oben genannte Fehlermeldung.

Was für treiber kann es fehlen?
Auf der andere Maschiene ist auch die Office Paket installiert.
Gibt es einen QOBDC driver?

Danke in voraus
Dateianhänge
Database Error Connection.png
Database Error Connection.png (7.89 KiB) 10505 mal betrachtet
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von Christian81 »

Hast Du auch die SQL-Treiber neben den Qt-Dlls mitgeliefert? Wenn nein -> mitliefern, siehe Qt-Doku
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

du meinst die QT SQL4.Dll.
Ja die ist dabei .

Ist (SQL4.Dll) das einzige nötige DLL für Datenbankverbindung ?
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von MichaelS »

galilio hat geschrieben: Ist (SQL4.Dll) das einzige nötige DLL für Datenbankverbindung ?
Nö. Es wird auch noch der Treiber benötigt ( je nach verwendeter Datenbank libqsqlite.sll, libqsqlmysql.dll, libqsqlodbc.dll ... ).

Gruß Michael
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

Ich benutze aber Access Datenbank bzw. QODBC und ich habe folgende DLL file miteingepackt.
QSQL4.dll
QSQLODBC4.dLL
QSQLPSQL4.dll
QSQLLITE4.dll


Meine Meinung nach es sollte ausreichen.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von Christian81 »

Die Pfade müssen aber auch stimmen ... ich habe nicht umsonst auf die Qt-Doku verwiesen. Aber hier der Link: http://doc.qt.io/qt-5/windows-deploymen ... qt-plugins
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

@Christian81 : danke erst mal

Ehrlich gesagt weiss ich nicht genau was ich noch einstellen muss.
Alle nötige QT(DLL) liegen in gleichen ordner, wo der installer auch liegt.
Was mich iritiert, ist dass der Intsaller auf meinem PC einwandfrei lauft.
Wenn es Probleme gäbe, dann muss auch meinem PC nicht funktinieren.
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von MichaelS »

galilio hat geschrieben:@Christian81 : danke erst mal

Ehrlich gesagt weiss ich nicht genau was ich noch einstellen muss.
Alle nötige QT(DLL) liegen in gleichen ordner, wo der installer auch liegt.
Dann ist zumindest der Pfad für das SQL-Treiber Plugin falsch. Siehe ( die von Christian verlinkte Doku):
each type of plugin must be located within a specific subdirectory (such as printsupport, imageformats or sqldrivers) within your distribution directory.
galilio hat geschrieben:Wenn es Probleme gäbe, dann muss auch meinem PC nicht funktinieren.
Nein, denn Deine installierte Entwicklungsumgebung setzt die Pfade korrekt. Auf anderen Rechnern ist das nicht der Fall und da funktioniert es dann eben nicht.
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

Okay Danke
Noch eine Frage: bei meine Anwendung benutze ich auch unterschiedliche QT DLL (QtSVG4.dll, QtOpenGL4.dll, QtNetwork4.dll, QtGui4.dll, QtCore4.dll) und ich gebe nirgendwo wo diese DLL sind.

So bald ich auf die Datenbanken verzichte kann ich meine (exe) auf beliebige PC installieren und es funktioniert.
Problem ist aufgetreten, als ich QtSql4.dll verwende.

Mir ist der zusammenhang nicht ganz klar (Sorry)
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von Christian81 »

Die SQL-Anbindungen sind, wie auch Bildformate etc. als Plugins angelegt. Liefert man sie nicht mit, funktioniert das entsprechende Feature nicht. Also wäre es sinnvoll das Datenbank-Plugin für die von dir verwendete Datenbank, auch mitzuliefern ...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

Hallo alle zusammen:

Das Problem habe ich mehr oder weniger gelöst.
Meine Lösungsansatz () ist : wenn ich der Installer auf einen beliebige PC installieren dann muss ich die "Plugin in der richtige Path auch einrichte und dort die nötige SQL Treiber rüber kopieren". Das ist der aktuelle Stand.


Es ist leider keine richtige Ansatz aber es funktiniert für die Moment.

Ich weiss, dass man einen Qt config datei erstellen kann und dort die richtige Pfade eingeben.
Das Problem ist: Wenn ich meine Anwendung starte, werden schon die SQL Driver runtergeladen und das ist bevor es mir der main() Funktion gestartet hat.
Ich habe es direkt nach der main() Funktion einen Breakpunkt gesetzt und es ist schon zu sehen bei der Output, dass die nötige Plugin schon runtergeladen sind.

Meine Frage:
Wie kann ich wissen: wann es diesen Plugins aufgerufen werden?
Dateianhänge
Debugging_Microsoft_Visual_Studio.png
Debugging_Microsoft_Visual_Studio.png (17.16 KiB) 10358 mal betrachtet
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von MichaelS »

galilio hat geschrieben: Es ist leider keine richtige Ansatz aber es funktiniert für die Moment.
Was stört Dich daran?
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

Dass ich beim Jeden PC die Pfad des Plugin manuel einrichten muss.
Ich will alles in einem Ordner " wo der Installer ist".
MichaelS
Beiträge: 240
Registriert: 27. Dezember 2005 12:49

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von MichaelS »

galilio hat geschrieben:Dass ich beim Jeden PC die Pfad des Plugin manuel einrichten muss.
Ich will alles in einem Ordner " wo der Installer ist".
Warum musst Du das manuell einreichten? Womit installierst Du denn Dein Programm auf anderen Rechnern? Jeder vernünftige Installer sollte in der Lage sein, bei der Installation ein Unterverzeichnis anzulegen.
galilio
Beiträge: 42
Registriert: 19. November 2013 08:16

Re: Visual Studio C++ + Qt Plugin "Datenbank Error Connecti

Beitrag von galilio »

MichaelS hat geschrieben: Warum musst Du das manuell einreichten?
Ja wo die Plugin " SQL.DLL" stehen, muss ich manuell einrichten sonst bekomme ich die "Datenbank Error Connection".
MichaelS hat geschrieben: Womit installierst Du denn Dein Programm auf anderen Rechnern?
Jeder vernünftige Installer sollte in der Lage sein, bei der Installation ein Unterverzeichnis anzulegen.
Der Installer ist mit Visual Studio 2008 C++ erstellt.

Problem ist aufgetreten seit ich meine Anwendung mit Datenbank erweitert habe.
In der vorherige Version (Ohne Datenbank) hat stets alles gut funktioniert.
Ich musste nur die nötigen DLL bei der Herstellung des Installers dazu addieren sonst nichts.
Antworten