|
이건 클라이언트 입니다.
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket)
{
// 받을때
Memo1->Lines->Add("처음 받을때 버퍼 크기 : "+IntToStr(Socket->ReceiveLength()));
char * Buff = new char[3];
memset(Buff, 0x00, 3);
Socket->ReceiveBuf(Buff, 3);
AnsiString stHeader = Buff;
Memo1->Lines->Add("처음 받은 해더 내용 "+stHeader);
delete [] Buff;
if( stHeader == "IDG" )
{
Memo1->Lines->Add("로그온 되었습니다.");
}
char *buf = new char[Socket->ReceiveLength()];
memset(buf, 0x00, Socket->ReceiveLength());
Socket->ReceiveBuf(buf,Socket->ReceiveLength());
Memo1->Lines->Add("나머지크기 : "+IntToStr(Socket->ReceiveLength()));
Memo1->Lines->Add("나머지값 : ");
Memo1->Lines->Add(buf);
delete buf;
}
-------- 결과~ --------
처음 받을때 버퍼 크기 : 3
처음 받은 해더 내용 IDG
로그온 되었습니다. <- 원래 여기서 끝나야 하지 않나요? ㅡㅡ;;;;
나머지크기 : 0 <- 사이즈가 0임에도 불구하고~
나머지값 :
$? <- 이런 이상한 코드까지 옵니당~ ㅠㅠ;
서버는 Socket->SendText("IDG");
이거 하나 날리구요~
이상하게 써버도 두번씩 읽습니당~ 어허~ 미티것넹~ ㅠㅠ;
남아있는 버퍼 싸이즈도 0인데두여~
소켓은 TCP소켓 쓰는데요~
걍 인디 쓸려고 해두~ 컴포넌트 설치방법을 잘 몰라서리~ ㅡㅡㅋ
(인디 설치방법좀 자세하게 알려주시면 감샤~ ^^)
아무쪼록 도와주세염~ *^^*
|