Appel d'une dll fortran a partir d'un programme en java [Résolu]

Signaler
Messages postés
18
Date d'inscription
jeudi 20 juillet 2006
Statut
Membre
Dernière intervention
3 septembre 2006
-
Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
-
Bonjour.

Je programme en ce moment une interface graphique en java, pour un programme en fortran.
J'ai fait une dll de ce programme, je sais comment charger la dll dans le programme java, appeler une subroutine de la dll, mais, je ne sais pas comment récupérer le résultat ( vu que le fortran renvoie tous les parametres passés en entrée).

10 réponses

Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
97
Salut,


oriente tes recherches sur le JNI (c'est le seul moyent possible de linker du java avec une lib dynamique)

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
18
Date d'inscription
jeudi 20 juillet 2006
Statut
Membre
Dernière intervention
3 septembre 2006

Petit oubli :
Merci de la réponse si quelqu'un la connait
Messages postés
18
Date d'inscription
jeudi 20 juillet 2006
Statut
Membre
Dernière intervention
3 septembre 2006

Bon, après un peu de recherche, si jamais quelqu'un a le même problème, voila un lien vers la solution que j ai trouvé.
http://www.math.ucla.edu/~anderson/JAVAclass/JavaInterface/JavaInterface.html

Des que j'ai compris comment ca marche, je met une explication en francais
Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
97
Salut,


tien pour te donner une idée

http://java.sun.com/docs/books/jni/html/jniTOC.html

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
18
Date d'inscription
jeudi 20 juillet 2006
Statut
Membre
Dernière intervention
3 septembre 2006

Bon, apres quelques recherches et lectures, il semble qu'il ne soit pas possible de récupérer les paramètres de sortie d'une subroutine fortran. Un program fortran peut par contre être appelé, en creant une classe java qui appele le programme fortran dans la dll.

Voilà.
Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
97
Salut,


enfaite ce que tu dois faire est assez simple (point de vue theorie :D)
tu as ton code fortant que tu lie avec une librairie dynamique dans
cette meme lib tu met une couche JNI donc en C/C++ afin de wrapper le
code fortrant et le code java ensuite c'est pinuts pour les appels

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
2
Date d'inscription
vendredi 4 juillet 2008
Statut
Membre
Dernière intervention
23 juillet 2008

Coucou,

Je programme moi aussi une interface graphique en Java pour un programme en fortran, sauf que je n'ai que la dll du programme, pas le code. En revanche je connais bien les paramètres d'entrée et de sortie du programme. Est-ce que JNI permet tout de même de se relier à la dll?
Je vais commencer par lire la doc de vos liens en attendant vos réponses (je suis plutôt faineant alors vivement vos réponses... )
Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
97
Salut,

Oui, tu peux faire un wrapper jni, qui appellera les fonctions de ta dll et le linker avec ton application java.
Tu peux regarder dans les sources JNI que j'ai déposé sur ce site, tu verras que je lie des fcts système avec du code java.
Sinon tu peux également regarder du coté de JNA (c'est un chouilla comme du JNI mais sans faire du code C/C++ (perso je trouve ça plus lourd et plus lent))

"je suis plutôt faineant alors vivement vos réponses"
>> Pas de bol ici on force les gens à chercher...

Au passage merci de créer tes propres topics pour poser tes questions.

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Messages postés
2
Date d'inscription
vendredi 4 juillet 2008
Statut
Membre
Dernière intervention
23 juillet 2008

Merci pour ta rapidité Twinuts,

Désolé d'avoir posé ma question ici, comme elle était très proche de celle de melianos31, je pensais pas à mal.
Messages postés
5351
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 août 2020
97
Salut,

"Désolé d'avoir posé ma question ici, comme elle était très proche de celle de melianos31, je pensais pas à mal."
>> C'est pas grave en soit, c'est juste que tu ne peux valider aucune réponse, puis c'est mieux d'avoir des choses à soit ^^

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO