|
void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,
TCustomWinSocket *Socket)
{
AnsiString r_temp;
int ReceiveSize = 0;
if(ServerSocket1->Socket->Connected)
{
ReceiveSize = Socket->ReceiveLength();
if(ReceiveSize==2)
{
char *Buf = new char[ReceiveSize];
Socket->ReceiveBuf(Buf, ReceiveSize);
Memo2->Lines->Text =Memo2->Lines->Text+Buf;
}
}
}
/*
char n;
if(ServerSocket1->Socket->Connected)
{
Socket->ReceiveBuf(&n,1);
AnsiString str;
str.printf("%X",n);
Memo2->Lines->Text =Memo2->Lines->Text+str;
}
}*/
//---------------------------------------------------------------------------
void __fastcall TForm1::ServerSocket1ClientWrite(TObject *Sender,
TCustomWinSocket *Socket)
{
if(ServerSocket1->Socket->Connected)
{
AnsiString Buf ="987654321";
Socket->SendBuf(Buf.c_str(), Buf.Length());
}
}
위에 두함수를 첨부하였는데여 각각 어떨때 동작하는 함수인지 설명좀 부탁드립니다.
그리고 그중 위에 함수는 네트웍을 통해 받은 데이터가 있을 경우 받은 데이터를 스트링으로 메모장으로 뿌려주는데여
데이터가 깨져서 나옵니다... 가끔 제가 보낸 데이터가 쭉 나오다가 깨지고 이런 현상을 반복합니다.
이유가 어쨌든 if(ServerSocket1->Socket->Connected) 상태라면 지금 어떻게 진행이 되는건지좀 알려주세여?
그럼 오늘두 좋은 하루 되시구여.. 정말 오랜만에 들어왔네여!!!
|