[問題] BCB的NMStrm元件連續傳送圖檔

看板Programming作者 (鼓)時間17年前 (2008/04/24 16:34), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
//傳送端 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
不要用loadfromfile的方式 因為蠻耗時的
02/15 16:45, 1F

02/15 16:46, , 2F
用loadfromstream 試試
02/15 16:46, 2F
文章代碼(AID): #1844OCfH (Programming)