INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

SQL-LV funktioniert als vi, aber nicht als exe



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

18.03.2020, 21:41
Beitrag #1

Hendrik Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Mar 2020

17
2011
DE



SQL-LV funktioniert als vi, aber nicht als exe
Hallo liebe Leute,

ich verzweifel an einem Problem mit der Free ODBC to LabView Library von Danny Holstein:

Link:
http://sql-lv.sourceforge.net/

Alles funktioniert einwandfrei, wenn ich das vi direkt in LabVIEW starte. Erzeuge ich jedoch eine exe, dann erhalte ich den Fehler "Fehler 5001 bei Invalid Reference, sql-lv could't connect".

Bereits im ersten Schritt liefert sql_open.vi als refnum eine "0", wenn ich die exe ausführe. Das entsprechende vi liefert eine funktionierende refnum.

Ich verwende LabVIEW 2017 auf einem Windows 10 Rechner und die neueste Version von sql-lv, um damit über ODBC auf eine Firebird-Datenbank zuzugreifen.

Auf dem angehängten Bild sieht man ein Minimalbeispiel zur Verdeutlichung des Problems. Im Vordergrund ist die exe, die als refnum "0" ausgibt. Im Hintergrund sind Blockdiagramm und Frontpanel des entsprechenden VIs, das eine gültige refnum ausgibt.

Ich wäre so dankbar, wenn mir jemand weiterhelfen könnte!


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2020, 08:09
Beitrag #2

83Daniel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 54
Registriert seit: Oct 2017

2019
2010
DE_EN


Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
Hat das VI denn keinen Fehlerausgang? Evtl. könnte dort stehen was genau das Problem ist.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2020, 22:12
Beitrag #3

Hendrik Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Mar 2020

17
2011
DE



RE: SQL-LV funktioniert als vi, aber nicht als exe
Doch, es hat einen Fehlerausgang. Dieser gibt aber keinen Fehler aus, der Status ist angeblich ok und entsprechend gibt auch keine weiteren Hinweise auf einen Fehler. Erst die nachfolgenden VIs beschweren sich dann über die "invalid reference".

Ich habe das Minimalbeispiel um ein Anzeigelement erweitert, das den Errorcluster anzeigt (siehe angehängter Screenshot). Außerdem habe ich das Blockdiagramm von sql_open.vi angehängt.


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2020, 01:01
Beitrag #4

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
Hallo Hendrik,

das Problem wird wie fast immer, wenn das VI funktioniert, die EXE aber nicht, in einer Pfadzuweisung liegen.
Lass dir mal auf dem Frontpanel den Pfad der Funktion "Application directory" in VI und dann in der EXE ausgeben.

Die LV-Hilfe sagt:
Wenn Sie dieses VI von einer eigenständigen Anwendung aus aufrufen, gibt dieses VI den Pfad zu dem Ordner aus, in dem sich die Anwendung befindet.
Wenn Sie dieses VI von der Entwicklungsumgebung aus aufrufen und das VI in eine LabVIEW-Projektdatei (*.lvproj) geladen ist, gibt das VI den Pfad zum Ordner der Projektdatei aus. Bei einem ungespeicherten Projekt gibt das VI <Kein Pfad> aus.
Wenn sich das Haupt-VI nicht in einem Projekt befindet, gibt das VI den Pfad zum Verzeichnis des VIs aus. Bei einem ungespeicherten VI gibt das VI <Kein Pfad> aus.


Da wird´s wohl dran hängen.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2020, 06:42
Beitrag #5

Hendrik Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: Mar 2020

17
2011
DE



RE: SQL-LV funktioniert als vi, aber nicht als exe
Den Fehler hab ich am Anfang wirklich auch gemacht. Er hat dazu geführt, dass eine dll nicht gefunden wurde und das Programm nicht ausführbar war. Das Problem habe ich aber behoben. Ich denke der Fehler liegt jetzt woanders, weil das Minimalbeispiel ja auch ohne jede Fehlermeldung ausgeführt wird. Die ausgegebene refnum stimmt nur nicht.

Oder kann es trotzdem daran liegen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2020, 08:15 (Dieser Beitrag wurde zuletzt bearbeitet: 20.03.2020 08:34 von 83Daniel.)
Beitrag #6

83Daniel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 54
Registriert seit: Oct 2017

2019
2010
DE_EN


Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
Ich habe es bei mir zum laufen gebracht, indem ich einfach alle Dateien des sql-lv mit zur Exe kopiert habe... welche jetzt bei dir genau fehlt, kann ich nicht sagen
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.03.2020, 08:37
Beitrag #7

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
(20.03.2020 01:01 )Trinitatis schrieb:  Lass dir mal auf dem Frontpanel den Pfad der Funktion "Application directory" in VI und dann in der EXE ausgeben.

Hallo Hendrik,

hast du das mal ausprobiert?
Dann siehst du, ob die DLL korrekt aufgerufen wird.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2020, 10:44
Beitrag #8

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
Hallo Trinitatis,

Zitat:Make (Windows):
Edit Makefile.mak, make sure the library paths for LabView, MySQL, and optional functions are correct.
Build with "nmake -f Makefile.mak"
Note: ODBC turned on automatically for Windows build

64-bit:
You're on your own -- I only have worked with 32 bit versions of LabView. Contact me if you have difficulty, I'll help where I can.

So stehts (nur Ausschnitt) auf der Download Seite hast Du das überprüft?

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2020, 14:43
Beitrag #9

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
(23.03.2020 10:44 )Freddy schrieb:  ...
So stehts (nur Ausschnitt) auf der Download Seite hast Du das überprüft?

Gruß
Freddy


Hallo Freddy,

ich habe nix überprüft. Wenn aber eine DLL aufgerufen wird, was im VI klappt und in der EXE nicht, dann kann man ja erstmal prüfen, ob der Aufrufpfad zur DLL überhaupt der erwartete ist.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2020, 15:22
Beitrag #10

83Daniel Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 54
Registriert seit: Oct 2017

2019
2010
DE_EN


Deutschland
RE: SQL-LV funktioniert als vi, aber nicht als exe
Es funktioniert, wenn alle *.dll Dateien aus der llb mit in dem Data Ordner der Applikation liegen
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  DB Open Connection - funktioniert in Exe; im VI nicht eb 4 6.098 10.09.2012 10:42
Letzter Beitrag: eb

Gehe zu: