當Client斷線又連線時 Server計數的問題 |
缺席
|
kostin
一般會員 發表:18 回覆:43 積分:22 註冊:2010-03-11 發送簡訊給我 |
請問各位前輩
小弟目前寫好的程式中 當觸發 ServerSocket1ClientConnect 時 Count 當觸發 ServerSocket1ClientDisconnect 時 Count-- Client 正常 連線 ClientSocket1->Active = true; 正常 斷線 ClientSocket1->Active = false; 都沒有問題 但是如果沒照這樣的程序 Server端計數就會有問題?? EX: Client 拔掉網路線 Client發生錯誤訊息 等 請問有什麼好方法防治 感恩 謝謝
------
工程師的世界太深奧了 ~ 總是有不斷的驚奇發生 在解決問題的當下 , 才能確認我的存在 在得到幫助的當下 , 才能發現我不孤單 |
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
直接使用 ServerSocket1->Socket->ActiveConnections
或使用下列方式來定時更新自定的連線數 ConnectionCount := RefreshConnectionCount; [code delphi] function TForm1.RefreshConnectionCount: Integer; var I: Integer; begin Result := 0; for I := ServerSocket1.Socket.ActiveConnections-1 downto 0 do try if ServerSocket1.Socket.Connections[I].Connected then Inc(Result); except Continue; end; end; [/code] |
kostin
一般會員 發表:18 回覆:43 積分:22 註冊:2010-03-11 發送簡訊給我 |
JOW 大
我用了您的方法 還是不行耶~~ Client 以人工拔除網路線時 ServerSocket1->Socket->ActiveConnections 還是不會減少阿 ServerSocket1->Socket->Connections[I]->Connected 應該是用來判別 第i個連線 還在否?? 我拔除網路線之後 程式還是判別 true 耶 ===================引 用 jow 文 章=================== 直接使用 ServerSocket1->Socket->ActiveConnections 或使用下列方式來定時更新自定的連線數 ConnectionCount := RefreshConnectionCount; [code delphi] function TForm1.RefreshConnectionCount: Integer; var ? I: Integer; begin ? Result := 0; ? for I := ServerSocket1.Socket.ActiveConnections-1 downto 0 do ? try ??? if ServerSocket1.Socket.Connections[I].Connected then Inc(Result); ? except ??? Continue; ? end; end; [/code]
------
工程師的世界太深奧了 ~ 總是有不斷的驚奇發生 在解決問題的當下 , 才能確認我的存在 在得到幫助的當下 , 才能發現我不孤單 |
Hero
一般會員 發表:3 回覆:10 積分:12 註冊:2002-07-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |