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 

LabVIEW und Java via JVM/JNI/Jace



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!

15.04.2010, 18:16
Beitrag #1

Hep Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Oct 2007

2009
2008
DE

80339
Deutschland
LabVIEW und Java via JVM/JNI/Jace
Grüß Euch!

Seit einiger Zeit versuche ich, ein in Java geschriebenes Open Source Projekt mit LabVIEW anzusteuern. Genauer möchte ich bilder im OME-TIFF format via bio-formats (s. http://www.openmicroscopy.org/site) speichern. Vom OSProjekt aus gibt es auch die c++ bindings, sodass man die Funktionen via java virtual machine, mit Jace als dll bekommt.
Um von LabVIEW aus darauf komfortabel zugreifen zu können, versuche ich eine Wrapper-Dll zu schreiben, die mit der o.g. dll kommuniziert. Diese startet bis jetzt die JVM und schreibt ein Bild aus Zufallszahlen. Zum Test habe ich ein c++ konsolenprogramm geschrieben, das wie nachher LabVIEW die dll ansteuert. Damit funktioniert alles wunderbar.
Rufe ich meine wrapper dll aber mit LabVIEW auf, bekomme ich Probleme:
Starte ich nur die JVM, so endet die Funktion ohne Fehler und gibt mir auch zufällig gewählte Zahlen wie z.B. 42 zurück. Wenn ich dann aber LabVIEW schließe, bekomme ich den Fehler <The instruction at “0x08f2f83a” referenced memory at “0x081f9b64”. The memory could not be “read”>. Das passiert genau dann wenn jace::helper::createVM(..) nicht auskommentiert ist.
Die JVM scheint also irgendwie ziellose Pointer zu erstellen, die das c++ programm nicht stören, LV aber schon..

Wenn ich zusätzlich versuche, das Zufallsbild zu schreiben, bekomme ich bei der Ausführung Fehler - aber ich nehme an dass das an der falsch initialisierten JVM liegt..

Hat jemand von Euch erfahrung mit LabVIEW und JVM? Das näheste, das ich dazu gefunden habe, war der Artikel

http://digital.ni.com/public.nsf/allkb/BEE...6256BC80068A49A

der mir aber auch nicht weiterhelfen konnte..
für die JVM gibt es eine JVM.dll, die ich als includepfad beim erstellen der lvlib angegeben habe, da LabVIEW scheinbar nicht standardmäßig die PATH-Systemvariable durchsucht (!?)

viele Grüße + Danke
Heinrich

(verwendete Versionen: Visual Studio 2008, LV2009)
[der .cpp code ist grad nicht sehr schön weil ich grad dauernd am rumkommentieren zum fehlersuchen bin - main wird nicht verwendet, nur createJVM und minWrite]


Angehängte Datei(en)
Sonstige .zip  WriteOMETIFF.zip (Größe: 11,28 MB / Downloads: 329)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Nachrichten in diesem Thema
LabVIEW und Java via JVM/JNI/Jace - Hep - 15.04.2010 18:16
LabVIEW und Java via JVM/JNI/Jace - Hep - 19.04.2010, 09:04
LabVIEW und Java via JVM/JNI/Jace - Hep - 08.09.2010, 09:09

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Java JAR-Bibliothek in Labview nutzen A_Bachmann 2 7.358 16.05.2014 14:28
Letzter Beitrag: A_Bachmann

Gehe zu: