或者设置TServerSocket的ThreadCacheSize等于1,试试

解决方案 »

  1.   

    那就不要用TServerSocket来判断,在应用层判断
    连上后,发出登录,并记录登录状态
    下一个连接连上后,发出登录,如果已经登录就切断
      

  2.   

    完全可以。
    1、设置全局变量FClientCount(记录连接数),初始值=0;
    2、在 uRemoteData单元的:
    procedure TTServer.RemoteDataModuleCreate(Sender: TObject);
    begin
      if FClientCount=0 then
      begin 
         //  连接数据代码
        FClientCount:= FClientCount+1;   // 记录连接数
      end
      else begin
         exit;
      end;
    end;
       只要连接数=0,创建RemoteDataModule,连接数>0就拒绝创建(连接)。仅供参考。
      

  3.   

    FClientCount 这个记录数怎么传到客户端;我想在客户端进行判断  if FClientCount > 1 then 弹出提示框告诉用户已经有其他用户登录;
      

  4.   

    在服务器上,编辑一个方法,在用户登录时,回传登录数。
    通常我在客户端,登录时,还上传,IP、计算机名,UsesName,和密码,成功加值相关数据。在回时时,就可以有意地回传登录数值。
    客户端上,接到登录数>=1,就显示有人已经登录等信息。
      

  5.   

    图上服务器,有登录数 (上线数),登录的IP,计算机名及登录名,登录时间等等。如果登录数大于1,就可以禁止登录了。注意上线数和登录数是不同 的,上线即客户端有人申请(上线)登录。
    当服务器登录>=1时,返回信息(字符),客户端显示已经有用户登录。 ,