Q&A

  • IdTCPClient를 사용 하여 통신을 할려고 합니다.

다름이 아니라....IdTCPClient를 사용하여 DATA는 send를 했는데..
구조체형식으로 응답이 2번오는데요.
그런데...그 구조체가 size가 틀림니다...
IdTCPClient1 connect에서 어떻게 처리를 해야할지 모르겠네요..
receive 받는 쪽에 size를 확인할 수 있는 방법은 없는가요???..

<!--CodeS-->
procedure TMAIN_TEMPF.IdTCPClient1Connected(Sender: TObject);

begin

   try
      while IdTCPClient1.Connected  do
      begin

         IdTCPClient1.ReadBuffer(SmsTranHeader,sizeof(SmsTranHeader));
         //SmsTranHeader => size는 120 바이트
         IdTCPClient1.ReadBuffer(SmsTranIntsReq,sizeof(SmsTranIntsReq));
         //SmsTranIntsReq => size는 134바이트
         IdTCPClient1.ReadBuffer(SmsTransReq,sizeof(SmsTransReq));
         //SmsTransReq=> size는 124바이트

        ===> 3개의 구조체 사이즈가 달라....보낸 데이터를 받을 수 없네요..
        ===> 데이터를 받을 때 당시의 size만 알아도 좋을 것 같은데....
        ===> 무슨 방법이 없나요???                

      end ;

   except

     delay(10000);
     IdTCPClient1.connect ;

   end;

end;
<!--CodeE-->
1  COMMENTS