请问,ServerSocket控件怎么知道当前拥有多少个 Client连接? 谢谢(100分)

  • 主题发起人 主题发起人 Orber
  • 开始时间 开始时间
O

Orber

Unregistered / Unconfirmed
GUEST, unregistred user!
请问,ServerSocket控件怎么知道当前拥有多少个 Client连接? 谢谢
 
Please try

ConnectionCount := Length(ServerSocket1.Socket.Connections);

给分哦,呵呵!
 
看李微的那三本書!
在主form寫如下過程
procedure TMainForm.UpdateClientCount(Incr: Integer);
begin
FClientCount:= FClientCount + Incr;
ClientCount.Caption := IntToStr(FClientCount);
end;

procedure TMainForm.UpdateQueryCount(Incr:Integer);
begin
FQueryCount :=FQueryCount + Incr;
QueryCount.Caption := IntToStr(FQueryCount);
IF Incr>0 Then
FTotalCount:=FTotalCount+ Incr;
TotalCount.Caption:= IntToStr(FTotalCount);
end;
在你的AppServer寫如下過程:
procedure TPre_AppServer.PConnectAfterConnect(Sender: TObject);
begin
mainform.UpdateClientCount(1);
end;

procedure TPre_AppServer.PConnectAfterDisconnect(Sender: TObject);
begin
mainform.UpdateClientCount(-1);
end;
 
看李維的分部式多層應用系統篇
有詳細的列子!
 
serversocket1.Socket.Connections

可以和我联系 QQ :970500
yafeng2000@sina.com
 
不好意思,代码有些问题。

可能还是得建立一个全局的参数Count,初始化为0;
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Inc(Count);
end;

procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Dec(Count);
end;
 
多人接受答案了。
 
后退
顶部