使用TClientSocket元件,當Server斷線時,Client端會接收到什麼樣的訊息? |
|
quinn
一般會員 發表:1 回覆:0 積分:0 註冊:2002-08-05 發送簡訊給我 |
當我們利用C Builder 5.0所提供的TClientSocket元件和TserverSocket元件來做資料的傳輸時,若遇到Server端突然的斷線,勢必會造成Client端無法與Server維持連線.那我們在Client端會接收到什麼樣的訊息?再來的情況就是,Client端當與Server發生斷線時,該如何再繼續去連結Server端?
因為我現在的狀況是要做一個隨時隨地都要跟Server端保持連線的程式,可是當Server端突然的斷線時,我的Client端程式就會當掉.故麻煩各位先進是否能提供一些方法.
|
turboted
版主 發表:95 回覆:754 積分:452 註冊:2002-07-23 發送簡訊給我 |
|
tender
初階會員 發表:23 回覆:90 積分:37 註冊:2002-09-26 發送簡訊給我 |
用
try{
//程式執行
.
.
.
}
catch (Exception &e)
{
發生錯誤時
.
}
要一直連接
1.做個 pooling 的動作(就是一直監察有無連線)
2.再發生錯誤時,將原來的socket->disconnect再重新連線 client:
try
{
while (!clientsocket->Connected)
{
Application->ProcessMessages();//才可以讓其他視窗工作
clientsocket->connect();
if (cliectsocket->Connected)
{
你的工作....
}
}
}
catch (Exception &e)
{
發生錯誤時
}
這是原理,一般將他寫背景執行緒內......
總之方法跟山一樣多
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |