bonjour,
Peut-on utiliser les appels sendmessage (et getmessage) du c++ pour comuniquer avec un programme java ? Si oui quel api utiliser du coté de java ?
Merci
Version imprimable
bonjour,
Peut-on utiliser les appels sendmessage (et getmessage) du c++ pour comuniquer avec un programme java ? Si oui quel api utiliser du coté de java ?
Merci
Tu peux facilement remplacer les fonctionnalités SendMessages() par des méthodes virtuelles.
Par exemple en abonnant tes objets communiquants à l'interface I_Message qui contient la méthode SendMessages
Mais ce n'est qu'une idée...
Slt,
Heu...
Je suis pas là. C'est quoi l'interface I_Message ?
Pour préciser un peu plus mon pb : il y a une application écrite en C++ qui utilise les appels SendMessage et GetMessage pour communiquer. Tout ce que je connais c'est le format des messages que ce programme envoie et attend en retour (des chaines de caractères). Moi je doit permettre à un programme écrit en Java de communiquer avec cette appli. Je voulais savoir si java fournit un mécanisme en standard, et sinon, y a t-il une API tiers qui apporte cette fonctionnalité ?
Merci.
Dans le pire des cas, tu peux utiliser JNI pour directement appeler ces methodes en C++ depuis ton code Java. S'il s'agit de communication sur le reseau (j'ignore ce que font sendmessage et getmessage, cela ne me dis rien en C++ ISO ; serait-ce du MFC/Win32 ?) tu peux egalement chercher un descriptif du protocole et l'implementer toi-meme en Java (ou trouver une implementation existante).
Apres il existe d'autres moyens pour du Java de dialoguer avec du C++ comme CORBA et d'autres trucs. Mais cela ne semble pas etre ce que tu cherches.
Slt et merci à tous :),
Ce n'est pas sur le réseau, c'est de la communication entre processus.
Le pb est que je suis "coincé" : l'appli en c++ est déjà écrite et j'ai juste l'exécutable, en fait c'est une sorte de pilote qui interface la communication avec un périphérique. Ce pilote m'envoie les messages du périphérique et se charge de délivrer les messages que je veux transmettre au périphérique. C'est du genre "opaque", je n'ai aucune idée du mécanisme de fonctionnement entre ce "pilote" et son périphérique, donc je ne peux pas le "court-cicuiter". Le programme que je doit faire communiquer avec ce périphérique est écrit en Java, et ce n'est pas sa seule tache, donc je ne peux pas le réécrire en C++ rien que pour ça.
En résumé : d'un coté, il y a un "bidule" qui me fait des SendMessage, GetMessage (API de communication Windows) et de l'autre, j'ai mon machin en java qui doit pouvoir causer avec. Apparement il faut effectivement voir du coté de JNI, pour pouvoir lier les fonctions SendMessage et GetMessage à mon prog. Nuit blanche en perspective :(((