我希望每个TClientSocket连接打服务器时都要经过服务器的认可。  
要在那里写代码,怎么写???

解决方案 »

  1.   

    在server 的serversocketaccept中
    向用户发送消息:sendtext '$u'
    然后用户端接受消息,判断如果是'$u'则输入用户名或机子ip这是发送消息到服务器
    ‘$u   username  or ip '
    服务器判断是否接受,
    如不接受则socket.close;
      

  2.   

    如果只是根据IP来判断的话,可以在OnAccept中写代码,不接受的话,直接执行socket.close
    就可以了。
      

  3.   

    如果有多个连接到服务器,用close方法不就会把其他人也断开
      

  4.   

    楼上说得有道理,close方法不好用。
      

  5.   

    OnAccept中的参数Socket,是当前和客户端相连的Socket,不是ServerSocket本身。即使是
    执行ServerSocket本身的Close,那也只是ServerSocket不再Listen了,其它已经连接的客
    户端不收影响。对于ServerSocket,每个客户端和它连线后,ServerSocket都会产生一个与
    客户端对应的 TCustomWinSocket ,关闭其中一个,不会对其它的客户端有影响。