執行緒元件產事件 |
答題得分者是:2007
|
cashyy
高階會員 ![]() ![]() ![]() ![]() 發表:117 回覆:322 積分:212 註冊:2004-04-30 發送簡訊給我 |
各位大大好。
小弟最近寫了一個元件,元件裡面有定義事件,當元件啟動時,會產生一個Thread,Thread的功能是在接收封包,當收到封包後,要如何通知元件的事件??封包可以正確收到,封包內容也無誤,但就是無法產生事件,小弟已爬了很多文了,但都沒有相關的,請各位大大不吝指導。 Thread.cpp Thread的程式碼如下: [code cpp] void __fastcall TRecvfromThread::Execute() { SOCKADDR_IN fromAddr; while(!Terminated) { try { int formAddrLen; formAddrLen = (int)sizeof(RecvThreadAddr); recvfrom(socket,(char*)&UdpRece,sizeof(UdpRece),0,(SOCKADDR*)&RecvThreadAddr,&formAddrLen); /* 呼叫元件的接收事件 */ ????????? } catch(...){} } } [/code] Component.cpp 元件的事件如下: [code cpp] if(FOnRead) //<---會一直是false,而無法將封包代入FOnRead(this,UdpRece,RecvThreadAddr); FOnRead(this,UdpRece,RecvThreadAddr); [/code] 謝謝各位大大! 編輯記錄
cashyy 重新編輯於 2008-11-12 10:16:00, 註解 無‧
|
2007
中階會員 ![]() ![]() ![]() 發表:54 回覆:90 積分:98 註冊:2008-08-12 發送簡訊給我 |
|
2007
中階會員 ![]() ![]() ![]() 發表:54 回覆:90 積分:98 註冊:2008-08-12 發送簡訊給我 |
這範例雖然不是網路、封包的範例,但它架構也是一樣,產生 Thread 在收資料, 當有資料時,呼叫事件,通知外層知道有資料。 但不知是不是大大要的東西~~ 參考啦!!! 參考啦!!! ===================引 用 2007 文 章=================== TCommThread is a Thread based class for serial (COM) and paralel (LPT) communica 這一篇分享的範例,可以幫助到你嗎??
編輯記錄
2007 重新編輯於 2008-11-12 22:01:26, 註解 無‧
|
cashyy
高階會員 ![]() ![]() ![]() ![]() 發表:117 回覆:322 積分:212 註冊:2004-04-30 發送簡訊給我 |
|
2007
中階會員 ![]() ![]() ![]() 發表:54 回覆:90 積分:98 註冊:2008-08-12 發送簡訊給我 |
http://delphi.ktop.com.tw/download.php?download=upload/491b734022e4c_20172_tcommthread.ZIP ===================引 用 cashyy 文 章=================== 感謝2007大大費時回覆,小弟無法開啟連結,不知大大是否有其它路徑!謝謝您! |
cashyy
高階會員 ![]() ![]() ![]() ![]() 發表:117 回覆:322 積分:212 註冊:2004-04-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |