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

使用TClientSocket元件,當Server斷線時,Client端會接收到什麼樣的訊息?

 
quinn
一般會員


發表:1
回覆:0
積分:0
註冊:2002-08-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-15 00:25:13 IP:61.59.xxx.xxx 未訂閱
當我們利用C Builder 5.0所提供的TClientSocket元件和TserverSocket元件來做資料的傳輸時,若遇到Server端突然的斷線,勢必會造成Client端無法與Server維持連線.那我們在Client端會接收到什麼樣的訊息?再來的情況就是,Client端當與Server發生斷線時,該如何再繼續去連結Server端? 因為我現在的狀況是要做一個隨時隨地都要跟Server端保持連線的程式,可是當Server端突然的斷線時,我的Client端程式就會當掉.故麻煩各位先進是否能提供一些方法.
turboted
版主


發表:95
回覆:754
積分:452
註冊:2002-07-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-15 14:20:12 IP:210.71.xxx.xxx 未訂閱
我想,在test 每一個有關網路元件的流程時 有一個很基本[很笨但有效]的方法,就是在每一個event 寫入一段程式碼 例如現在觸發的是OnAbort 就會在畫面上print 出 OnAbort 當你這樣做之後,會面就會出現 OnSendConnectMessage OnWaitConnect OnConnect OnDeConnect 這就正是一個很簡單的流程測試了 經由知道流程之後,就能得知現在的狀況和message 這樣懂了吧..一點都不難喔
tender
初階會員


發表:23
回覆:90
積分:37
註冊:2002-09-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-10-08 18:29:56 IP:61.59.xxx.xxx 未訂閱
用 try{ //程式執行 . . . } catch (Exception &e) { 發生錯誤時 . } 要一直連接 1.做個 pooling 的動作(就是一直監察有無連線) 2.再發生錯誤時,將原來的socket->disconnect再重新連線 client: try { while (!clientsocket->Connected) { Application->ProcessMessages();//才可以讓其他視窗工作 clientsocket->connect(); if (cliectsocket->Connected) { 你的工作.... } } } catch (Exception &e) { 發生錯誤時 } 這是原理,一般將他寫背景執行緒內...... 總之方法跟山一樣多
系統時間:2024-04-17 2:34:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!