[問題] BCB的NMStrm元件連續傳送圖檔
//傳送端
void __fastcall TForm1::StreamClick(TObject *Sender)
{
TFileStream *FStream;
FStream = new TFileStream(Edit1->Text+".bmp",fmOpenRead);
//Edit1->Text 圖檔編號
NMStrm1->Host="192.168.1.10";
NMStrm1->FromName="192.168.1.20";
NMStrm1->PostIt(FStream);
FStream->Free();
}
//接收端
void __fastcall TForm1::NMStrmServ1MSG(TComponent *Sender,
const AnsiString sFrom, TStream *strm)
{
TFileStream *FStream;
if(FileExists("buf.bmp"))
DeleteFile("buf.bmp");
FStream=new TFileStream("buf.bmp",fmCreate);
FStream->CopyFrom(strm,strm->Size);
FStream->Free();
Image1->Picture->LoadFromFile("buf.bmp");
}
當我傳送第一張成功後
在改變Edit1->Text的數字
做另一張的傳送時
就會當掉跑出
Project Project1.exe raised class ESockError with message
'10038:Socket operation on non-socket'.
Process stoppes. Use Step or Run to continue.
但是接收端是有成功收到第一張的
有時候是傳到第三張當掉
所以不知道在做連續傳送圖檔時
是不是不適合用NMStrm元件
還是需要做怎麼樣的修正
請各位有碰過這個問題的能給我一些意見
謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.175.37
※ geneteam:轉錄至看板 C_and_CPP 04/24 16:38
→
02/15 16:45, , 1F
02/15 16:45, 1F
→
02/15 16:46, , 2F
02/15 16:46, 2F