Q&A

  • Indy에서 데이타 보내면 받는쪽 데이타에 이상한 문자가 포함되네요
  TCommBlock = record  
                 Msg_1 : string[100];
                 Msg_2 : string[200];
               end;
으로 선언하고,,

S 는 300 빠이트 문자 입니다.

  CommBlock.Msg_1 := copy(S, 1, 100);  
  CommBlock.Msg_2 := copy(S, 101, 200);
  Client.WriteBuffer(CommBlock, SizeOf(CommBlock), true);

위처럼 데이타를 보내면,

맨처음 Byte에 d 가 들어가고 102번째 Byte에 ? 가 들어갑니다.

원인이 무엇인지,,, 알려주시기 바랍니다.

감사합니다.
1  COMMENTS
  • Profile
    최용일 2006.04.08 11:54
    안녕하세요. 최용일입니다.

    아마도 Msg_1, Msg_2의 문자열 크기가 같이 들어가서 그런것 같네요... string[n] 이런식의 AnsiString형을 이용하시면 맨 첫번째 바이트에 문자열의 크기가 들어갑니다.

    ^^ 항상 즐코하세요...