клиент Code: //cs - ClientSocket //od - OpenDialog void __fastcall TForm1::Button1Click(TObject *Sender) { cs->Address = Edit1->Text; cs->Port = 1001; cs->Active = true; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { if(od->Execute()) { try { TMemoryStream *ms = new TMemoryStream; ms->LoadFromFile(od->FileName); ms->Position = 0; cs->Socket->SendText("#" + od->FileName + "!" + IntToStr(ms->Size)); Memo1->Lines->Add("отправляем файл " + od->FileName + ", размером " + IntToStr(ms->Size)); cs->Socket->SendBuf(ms->Memory, ms->Size); ms->Clear(); delete ms; } catch(...) { Memo1->Lines->Add("не пердаёт"); } } } //--------------------------------------------------------------------------- сервер Code: void __fastcall TForm1::ssClientRead(TObject *Sender, TCustomWinSocket *Socket) { TMemoryStream *ms = new TMemoryStream; AnsiString text = Socket->ReceiveText(); if(text.Pos("#")) { filename = text.SubString(text.Pos("#")+1,text.Pos("!")); size = text.Delete(text.Pos("#"),text.Pos("!")); Socket->ReceiveBuf(ms->Memory, StrToInt(size)); ms->Position = 0; ms->SaveToFile(filename); ms->Clear(); delete ms; Socket->SendText("файл успешно передан"); } } //--------------------------------------------------------------------------- void __fastcall TForm1::FormActivate(TObject *Sender) { ss->Port = 1001; ss->Active = true; какието ошибки при передаче, в чём проблема и где в коде ошибки? Вроде смотрю ошибок в коде нет, передаётся либо пустой файл с пустым расширением либо не передаётся совсем. Помогите, буду благодарен