ive un serveur TIdTCPServer en cours d'exécution, et le client en utilisant le navigateur Web (ou tout autre logiciel) pour communiquer, je ne sais pas le protocole, mais ce que j'essaie de faire est d'envoyer les données entre le client et une autre connexion (les deux connectés au même TIdTCPServer) par exemple les données envoyées par le premier client sont transmises au second client, et les données envoyées par le second client sont transmises au premier client, comme un proxy (i ne peut pas vraiment utiliser un serveur proxy puisque c'est juste cette condition) et le TIdTCPServer devrait toujours recevoir d'autres clients et traiter leurs données.Transférer des données directement entre 2 connexions dans Indy (TIdContext)
Je suis tombé sur la première ligne de code, puisque TIdContext.Connection.Socket.ReadLn nécessite un délimiteur, et le protocole du client est inconnu du serveur.
des idées?
merci.
Peut-être que le composant TIdMappedPortTCP dans Indy est utile, avec quelques modifications - voir http://stackoverflow.com/questions/4136226/proxy-server-using-indy – mjn
Lorsque j'ai été confronté à ce même problème, j'ai utilisé [ICS - Internet Component Suite] (http://www.overbyte.be/frame_index.html?redirTo=/products/ics.html) components: Contrairement à Indy, ils ne bloquent pas, donc vous pouvez facilement recevoir ET envoyer en même temps. –
je ne peux pas utiliser TIedMappedPortTCP car c'est en fait un serveur, avec beaucoup de fonctions, fournissant des informations et d'autres choses, et juste une fonction à l'intérieur du serveur, pour emmener le client à un autre client, et je ne peux pas passer à ICS développement: ( – killercode