線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:937
推到 Plurk!
推到 Facebook!

ServerSocket 連線Error深入探討問題

答題得分者是:brook
TIY~2
一般會員


發表:26
回覆:37
積分:22
註冊:2003-08-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-12 00:32:21 IP:218.162.xxx.xxx 未訂閱
請問如果一個連線若斷線發生錯誤正常會出現在ONERROR事件內 但如果使用者拔除網路線(特殊斷線) 就不會發生錯誤了~~ 可是當下次有檔案或字串傳給Client時就會出現SYSTEM ERROR 非程式所預期的錯誤 我該如何解決還有要去哪裡解決ㄋ~~我說程式內容 請大大指教
mkbobo
一般會員


發表:4
回覆:68
積分:19
註冊:2003-04-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-06 18:00:09 IP:202.168.xxx.xxx 未訂閱
有沒有可能是 Client 端 每隔一段時間久對server傳資料 問他在不在呢 通常我們的做法都是兩邊都要互相問 因為不保證哪一邊會不正常斷線 希望對你有幫助
yhlu
一般會員


發表:4
回覆:5
積分:1
註冊:2003-10-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-07 17:22:33 IP:210.67.xxx.xxx 未訂閱
你可以設計HeartBeat來偵測網路的正常與否
TIY~2
一般會員


發表:26
回覆:37
積分:22
註冊:2003-08-07

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-10 09:35:25 IP:218.162.xxx.xxx 未訂閱
可能我的問題沒有問的很清楚 所以你們回答的方向都有點不對 與CLINET的連線依然會有固定的時間在作傳輸的動作 只是當發生錯誤時~~我想避免不必要的MessageBox顯示 因為他會出現系統錯誤,請問要如何避免
brook
資深會員


發表:57
回覆:323
積分:371
註冊:2002-07-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-10 11:35:09 IP:218.160.xxx.xxx 未訂閱
1.我用bcb5的TServerSocket,雖然拔除網路線,但在OnClientError仍可攔到錯誤訊息,是不是你用其他的元件?或是ErrorCode沒設為零?  如:  
 
void __fastcall TForm1::ServerSocket1ClientError(TObject *Sender,
      TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
  Memo1->Lines->Add(AnsiString("Error:") ErrorCode);
  ErrorCode = 0;  //以免出現錯誤訊息
}
2.或許你的server是一直丟資料,而要出現錯誤訊息需要一些時間,以致還沒出現錯誤訊息前程式就掛掉了,所以是否要考慮要丟資料時,先check上一筆send到某client端的資料,是否己傳輸完畢,假如還未完成就先不傳.
系統時間:2024-04-29 20:20:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!