아래와 같이 해보시면 될것 같지만 초보자에게는 Indy 보다는 Socket API 쪽을 먼저 학습하시길 권합니다.
char RxData[100];
int RxLen = 100;
TBytes buf;
buf.set_length( RxLen );
IdTCPClient1->Socket->ReadBytes( buf, RxLen, false );
memcpy( RxData, &buf[0], RxLen );
초보남 님이 쓰신 글 :
: 한가지만 더 부탁드립니다.
: client에서 server로 전송은 nan님께서 조언해 주신대로 하니 잘 되었습니다.
: 이번에는 반대로 수신이 문제인데 버퍼에 수신하는 것도 도와주시면 안될까요~~
:
: nan 님이 쓰신 글 :
: :
: : char TxData[100];
: : int TxLen = 100;
: :
: : TBytes buf;
: : buf.set_length( TxLen );
: : memcpy( &buf[0], TxData, TxLen );
: : IdTCPClient1->Socket->Write( buf );
: :
: : 요렇게 하면 버퍼를 송신할수 있을것 같습니다. 인디가 버퍼를 보낼때 좀 지롤같죠..
: :
: : 초보남 님이 쓰신 글 :
: : : 현재 빌더 2009, INDY TCP CLIENT 기능을 이용하여 SERVER으로 데이터 송/수신 구현중입니다.
: : : 헌데 서버로 데이터 전송이 제대로 되지 않아서...
: : :
: : : TxData[100] => 보낼 hex 데이타
: : : TxLen => 보낼 데이타 길이
: : :
: : : 위 데이터를 전송하기 위해서 어떤 함수를 사용해야 하는지요...
: : : IdTCPClient1->Socket->???
: : :
: : : 그냥 스트링 전송은 잘됩니다.(IdTCPClient1->Socket->WriteLn("abcd");
: : : 하지만 원하는 것은 보낼 길이(TxLen )가 정해진 hex 데이타(TxData[??] 이거든요..
: : :
: : : 추가로 전송 데이타 형식이 0x13을 보낸다면 실제로 서버 수신은 0x31 0x33 0x0d 0x0a 이렇게 수신되는것 같은데
: : : 그냥 0x13 이렇게 리얼하게 전송은 안되는지요... 초보라 너무 모릅니다..