<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><category>pcsoft.fr.windev</category><copyright>Copyright 2026, PC SOFT</copyright><lastBuildDate>10 Sep 2020 15:16:18 Z</lastBuildDate><pubDate>10 Sep 2020 15:16:18 Z</pubDate><description>Bonjour, &#13;
&#13;
Je souhaite créer une redirection de socket en continue. Je m'explique, aujourd'hui, j'ai une application A qui communique en socket vers un serveur A.&#13;
&#13;
Soit Application A vers Serveur A.&#13;
&#13;
Une application tierce entre les deux, qui à pour but de récupérer l'info de l'application A puis de renvoyer l'info vers le serveur A. ( J'espère être clair :/ )&#13;
&#13;
&#13;
Pour résumer :   &#13;
&#13;
- Aujourd'hui :  Application A &lt;=&gt; Serveur A&#13;
&#13;
Ce que je veux  : Application A  &lt;=&gt; Application B &lt;=&gt; Serveur A&#13;
&#13;
&#13;
Pour ce faire, je travail avec des Threads.&#13;
&#13;
Ce que j'ai pour le moment :&#13;
&#13;
1) Création d'une socket "Serveur", avec une attente de connexion&#13;
2) J'exécute mon Thread, avec comme paramètre( ma socketClient , mon serveur A ip et port)&#13;
	ThreadExécute("ThreadClient"+idx, threadNormal, passPlat,maSocketS,IpMoteur,PortMoteur)&#13;
3) Je rentre dans ma fonction passPlat &#13;
[code:wl]&#13;
	QUAND EXCEPTION DANS&#13;
		SI SocketConnecte("clientSocket"+idx, portM, ipM) = Faux ALORS&#13;
			Erreur("Connexion impossible :  " + ErreurInfo(errMessage))&#13;
		SINON&#13;
			//Keep_alive&#13;
			ThreadMode( threadSectionCritique+threadMultiProcesseur)&#13;
			// Process (ou thread) d'écoute des messages&#13;
			// Ce traitement est exécuté en tâche de fond&#13;
			SocketChangeModeTransmission(socketServeur, SocketMarqueurFin, CRLF) &#13;
			bConnexionActif = Vrai &#13;
			ThreadExécute("ThreadServeur"+nbConnexion, threadNormal, Transmission,socketServeur,"clientSocket"+idx)&#13;
			ThreadExécute("ThreadClient"+nbConnexion, threadNormal, Transmission,"clientSocket"+idx,socketServeur)&#13;
			Trace("Connexion TCP Expéditeur : ", IpServeur + ":" + PortServeur + " &lt;*---*&gt; " + IpMoteur + " : " + PortMoteur ) &#13;
		FIN&#13;
	FAIRE&#13;
		Erreur("Connexion impossible " +bConnexionActif)&#13;
		SocketFerme("clientSocket"+idx)&#13;
		bConnexionActif=Faux&#13;
		RETOUR&#13;
	FIN	&#13;
[/code]&#13;
4) 	&#13;
[code:wl]&#13;
	PROCÉDURE INTERNE Transmission(socketEntree,SocketSortie)&#13;
	monBuffer est un Buffer = 8192&#13;
	msgRecu est une chaîne&#13;
//		TANTQUE SocketExiste(socketEntree)&#13;
	TANTQUE Vrai&#13;
			SI SocketChangeModeTransmission(socketEntree, SocketMarqueurFin, CRLF) = Faux ALORS&#13;
				RENVOYER Faux&#13;
			SINON&#13;
				msgRecu = SocketLit(socketEntree,Faux,3000)&#13;
				SI msgRecu &lt;&gt; "" ALORS&#13;
			 		SI SocketLit(socketEntree,Faux,3000)=-1 ALORS&#13;
						SORTIR&#13;
					SINON &#13;
						SI SocketEcrit(SocketSortie,msgRecu) = Vrai ALORS&#13;
							Trace(" Message envoyé : " + msgRecu)&#13;
						FIN&#13;
					FIN&#13;
				FIN&#13;
			FIN&#13;
		FIN&#13;
	FIN&#13;
[/code]&#13;
&#13;
J'ai une erreur sur la ligne  :  msgRecu = SocketLit(socketEntree,Faux,3000)  =&gt; connexion réinitialisée par l'autre partie  (WSAECONNRESET )</description><ttl>30</ttl><generator>WEBDEV</generator><language>fr_FR</language><link>https://forum.pcsoft.fr/es-ES/pcsoft.fr.windev/242477-socket-redirection-socket/read.awp</link><title>[Socket] Redirection de socket</title><managingEditor>moderateur@pcsoft.fr (El moderador)</managingEditor><webMaster>webmaster@pcsoft.fr (El webmaster)</webMaster></channel></rss>
