LabVIEWForum.de - DB Open Connection - funktioniert in Exe; im VI nicht

LabVIEWForum.de

Normale Version: DB Open Connection - funktioniert in Exe; im VI nicht
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag allerseits,

Ich hoffe mir kann geholfen werden, ich bin ein wenig am verzweifeln.
Vor geraumer Zeit, habe ich mir ein Log-Tool geschrieben, dass Einträge in eine Microsoft Access Datenbank (.mdb-Datei) schreibt. Nun kamen weitere Anforderungen an das Tool und ich war guter Dinge, hatte ich es doch relativ sauber strukturiert programmiert.
Leider stellte ich fest, dass das VI in der IDE nicht mehr lauffähig war (aber ausführbar), da die Verbindung mit der Datenbank-Datei nicht mehr geöffnet werden konnte. Kurioserweise klappt der Zugriff weiterhin, wenn ich das VI in eine Exe kompiliere.

Hier ein CodeSchnipsel, der früher geklappt hat. Sowohl in der IDE, als auch in der EXE:
[attachment=41476]

Ich benutze:
LV2010 (+DB Conn TK)
MS Access 2003

Ist eventuell der Connection String nicht ganz korrekt?
Die Datenbank-Datei hat kein Passwort oder sonstige Einstellungen bekommen.
In den ODBC-Datenquellen-Einstellungen habe ich nichts weiter eingestellt. Da existiert unter anderem ein nicht weiter eingestellter Name "Microsoft Access-Datenbank"-Eintrag - Treiber "Microsoft Access Driver (*.mdb)" (ohne verknüpfe Datei, ohne sonstige Vorgaben)

Könnt ihr euch einen Reim darauf machen? Was kann ich noch testen?


Danke für eure Zeit
Gruß
Kommst Du mit "Create Data Link" auf Deine DB? Und welches Betriebssystem hast Du?
Vielleicht hilft Dir auch das:
http://digital.ni.com/public.nsf/allkb/E...94005B4CB7

Gruß Markus
Hallo Y-P,

danke für deine schnelle Antwort.

Ich benutzte WinXP 32bit, insofern trifft der Link nicht ganz zu glaube ich. Aber er hat mich auf eine Idee gebracht...
Ich habe mir "Create Data Link" angeschaut. Mit "Microsoft Jet 4.0 OLE DB Provider" eine Verbindung zu meiner Datenbank-Datei getestet. Heraus kam:
[attachment=41477]

Jetzt aber kommts. Meine Idee war nun: "Probier es mal mit der neuen LV2012 aus, die hast du dir doch vor kurzem zu Testzwecken installiert." Und siehe da, sowohl das oben gepostete Test-VI, als auch die Testverbindung mittels "Create UDL..." funktioniert problemlos! Was aber heißt das nun?
Habe ich mir mit der Installation von LV2012 mein DB Conn TK "zerschossen". Wie kann es dann sein, dass es in einer kompilierten Exe funktioniert.


Danke für die Hilfe
Das hört sich sehr seltsam an, dass aus einem nicht funktionierenden VI eine funktionierende EXE wird und dass das nicht funktionierende VI aber unter einer neueren LabVIEW-Version läuft.
Hast Du schon mal versucht, Dein Database Connectivity Toolkit nochmal neu zu installieren?
Ich kann mir das nicht erklären, aber ich kenne mich da leider in der Tiefe auch nicht wirklich aus. Das ist dann eher was für RolfK. Big Grin

Gruß Markus

(07.09.2012 15:48 )erik.brenncke schrieb: [ -> ]Testverbindung mittels "Create UDL..." funktioniert problemlos! Was aber heißt das nun?
Habe ich mir mit der Installation von LV2012 mein DB Conn TK "zerschossen". Wie kann es dann sein, dass es in einer kompilierten Exe funktioniert.
Hallo nochmal,

der Hinweis mit dem "reparieren" des DB Conn TK war goldrichtig! Ich habe einfach unter Software ändern/hinzufügen in diesem NI-Wizard das LV2010 DB Conn TK ausgewählt und repariert.
Siehe da: nach einer kurzen Weile war er fertig und das VI funktioniert nun sowohl in LV2010, als auch in LV2012.

Danke für den Hinweis.
Gruß
Referenz-URLs