性质很简单 但真的很难

解决方案 »

  1.   

    定义一个方法传到服务器,在服务端halt(0)
      

  2.   

    创建一全局变量 CountNo:integer
    在窗体FORM1的创建事件中:COUNTNO:=0
    在数据模块的创建事件中:FORM1.COUNTNO:=COUNTNo+1;
    在数据模块的销毁事件中:FORM1.COUNTNO:=COUNTNo-1;
    在函数中判断COUNTNO<>0 ,如果为0 则close ........
      

  3.   

    谢谢你:jiaai(逍遥游)
    有些用户的连接不能随便关掉。现在的问题是:有些用户是非正常断线。可能不会执行数据模块中的destroy 事件
      

  4.   

    delphi已经帮你做好了,服务器自动检测客户连接,你只要在数据模块释放事件中实现代码(比如打印出客户代码),不过这是一个客户一个数据模块事例的情况。其他情况类似,稍做修改。
      

  5.   

    TInterfacedObjec自动的释放接口,不用你管;
    你要是想的话:IInterfaceValue := Nill;//对单个用户操作;
      

  6.   

    No.1:
      FCount => 0 //客户端;
      Decstructor Destory; Override
        ...
    No.2:
      利用接口;