Posted: Wed 14 Apr 2010 - 10:55 Post subject: Utilisation d'une dll labview dans un plugin imageJ
Bonjour à tous,
j'ai développé un PlugIn ImageJ qui utilise des fonctions contenues dans une dll construite en LabView. L'utilisation de cette dll nécessite une interface JNI en C.
Ce PlugIn fonctionne très bien lors du premier lancement mais si l'on souhaite, dans une même session ImageJ, lancer plusieurs fois ce PlugIn (ie instancier plusieurs objets PlugIn) le PlugIn reste bloqué lors de l'appel de la première fonction Labview.
Pour essayer de localiser l'erreur j'ai remplacé la dll de calcul en Labview par une dll en C. Avec ce remplacement il n'y a plus d'erreur et le PlugIn peut se lancer plusieurs fois.
D'un autre côté si j'essaye de lancer un PlugIn via un programme Java quelconque en simulant l'appel d'un PlugIn par ImageJ (c'est à dire chargement et instanciation dynamique des classes Java compilées via un ClassLoader), on peut également lancer plusieurs fois le PlugIn.
Il semblerait donc que le problème vienne du couple ImageJ / LabView, probablement lié au fait que ImageJ lance un runtime Labview qui n'est peut être pas déchargé et qui lors d'un second chargement pose problème.
Je voudrais savoir si quelqu'un à déjà rencontré un problème de ce type sous ImageJ ou si vous avez une idée pour me débloquer.
Posted: Sat 17 Apr 2010 - 18:49 Post subject: Utilisation d'une dll labview dans un plugin imageJ
Bonsoir _LBS_,
Ton problème est tout de même assez atypique, et je dois bien avouer que je me suis jamais aventuré à faire quelque chose dans le genre.
Je trouve déjà l'utilisation de LabView assez pénible mais là avec JNI et ImageJ en plus ça devient quelque chose d'assez spécial.
Tout ce que je peux te dire est que je trouve étrange que tu obtienne deux résultat différents en laçant le plugin d'après ImageJ et sans. Ça me semble d'autant plus étrange qu'à priori la DLL générée par LabView ne doit pas avoir besoin de runtime étant donné qu'il s'agit de code machine.
Malheureusement je ne peux pas vraiment t'en dire plus, n'ayant jamais tenté ce genre de pont _________________ Site de Jérôme Baudoux - Battle Jump
Posted: Mon 19 Apr 2010 - 10:08 Post subject: Utilisation d'une dll labview dans un plugin imageJ
Tout d'abord merci de ta réponse, Tu imagines bien que si j'ai réalisé ce genre de pont c'est que je n'avais pas vraiment le choix.
Pour mon problème il semblerait que cela proviennent de l'association ImageJ / LabView mais qu'il soit causé par une mauvaise gestion de la mémoire niveau LabView. Je vais essayer de contacter le support LabView et voir si ils peuvent m'aider.