브레이크 포인트찍어서 봤는데여 클라이언트에서 보내는데 보낼때는 파일명과 파일크기가다 저장되여
근데 서버에서 받아놨다가 다른 클라이언트에 뿌려주는데 서버에서 전혀 못읽어 오네요 보낼때는 분명히 전부
보내는데 왜 서버에서 못받아 올까요?
if(OpenDialog1->Execute())
{
header header;
header.hcde = Efile;
header.size = sizeof(file);
file *file = new file();
file->fname = new TFileStream(OpenDialog1->FileName, fmOpenRead|fmShareCompat);
file->fsize = file->fname->Size;
TBytes sendFile;
sendFile.Length = sizeof(header);
memcpy(&sendFile[0], &header, sizeof(header));
sendFile.Length = sizeof(header) + sizeof(file) + file->fsize;
memcpy(&sendFile[sizeof(header)], &file, sizeof(file));
IdTCPClient1->Socket->Write(sendFile, sendFile.Length);
}
보낼때 클라이언트구요
TBytes receFile;
file *file = new file();
AContext->Connection->Socket->ReadBytes(receFile, sizeof(file));
memcpy(&file, &receFile[0], sizeof(file));
이게 서버에서 받아오는건데 전혀 아무것도 안받아와요 ㅠㅠ 보낼땐 정보가 다 보내지는데
|