Salut,
à partir d'un socket ICS, je récupère ce qui arrive sur un certain port. Je mets ces données dans un Buffer, puis ensuite, graçe à un autre socket, je renvoi ces données vers un autre port et un autre Host.
Sa à l'air d'a peut près marcher.
Cependant, après la première reception de données, le logiciel se met à bugger.
A mon avis il y a quelque chose que je ne fait pas correctement, voir tout peut-être ^^.

Merci de me donner un petit coup de pouce sur mon code :

Pour info, pour vérifier ce que je reçois, j'affiche le md5 des données dans un Memo (j'affiche uniquement si le md5 est différent).

Je déclare les variables de cette manière :
ABuffer1: TWSocketData;
a,a1:string;

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
procedure TMain.Socket1DataAvailable(Sender: TObject; ErrCode: Word);
begin
   with Sender as TWSocket do
   try
    Socket1.Receive(ABuffer1,strtoint(Edit4.Text));
     with Socket do
          try
            Addr  := JvIpAdress1.Text;
            Port  := Edit1.Text;
            Proto := 'udp';
            if State = wsClosed then
              Connect;
            Send(ABuffer1,SizeOf(ABuffer1));
          except
           on E: Exception do
              Log('Error ' + E.Message);
        end;
      a:=MD5(ABuffer1, sizeof(ABuffer1));
      if(a<>a1) then
        log(a);
      a1:=a;
   except
      on E: Exception do
         Log('Error ' + E.Message);
   end;
end;
Merci, A+