Bonjour à tous,
Je débute avec les canaux nommés,et j'ai un peu de mal à faire se que je voudrai, voilà pourquoi je viens vers vous.
Voila je souhaiterais que mon application créé un pipe nommé en duplex:
Je dois pouvoir communiquer avec une autre application qui se connecterai à mon pipe et avec laquelle j'ai besoin d'échanger des informations. Je dis bien échanger car l'application client peut m'envoyer des demande, mais je doit pouvoir aussi lui répondre. Mon problème étant justement de pouvoir lui répondre au moment que je souhaite, car parfois avant de lui répondre, je doit effectuer un action.
Or dans mon code actuel, j'arrive bien a récupérer les messages de l'autre application, et arrive bien a lui répondre dans la foulé, mais pas de manière asynchrone.
Dans le cadre de mes tests j'ai essayer de faire deux application de type tchat pour voir si j'arrive a bien discuter dans les deux sens.
Je me suis inspiré du code de la msdn pour arriver a faire quelques chose mais mon problème et que mon code bloque sur la fonction WaitForMultipleObjects quand le client ne m'envoi rien, du coup je ne peut pas lui envoyer mon message.
La fonction WaitForMultipleObjects ? ne doit-elle être appelé que lorsque mon serveur attend une réponse?
Partant du code msdn qui est totalement synchrone j'ai du mal à trouver comment organiser mon code pour arriver a ce que je souhaite.
Autre chose comment faire en sorte que l'application client ne soit pas obligé d’être lancer en tant qu'admin pour pouvoir se connecter? J’avoue ne pas avoir bien compris ce que la msdn expliquait concernant cela.
Partager