因为需要要把一个老程序(使用tserversocket,tclientsocket)改成多线程,原来的在serversocket的onClientDisconnet中有一些结束的代码处理。在stThreadBlocking模式下,不知道如何获得这个消息,现在每次客户端关闭,服务器端会报错,我跟踪了一下 terminated还是为false clientsocket.connected还是为true阿。请哪位指教!!

解决方案 »

  1.   

    因为是老程序的升级,客户端不想改了,发布比较麻烦.所以只想改改服务端,哪位帮帮忙,主要资料太少了,delphi的帮助也没有什么东西介绍这方面的
      

  2.   

    主动方式是主动发送和接收的。1,阻塞方式下使用TWinsockStream
    2,操作时候抓异常
    3,抓住异常CLOSE掉SOCKET
    或者改用INDY控件要省事一些。
      

  3.   

    知道了,我现在也打算改到indy上去了,刚才初步的看了一下,indy基于诸塞模式的好像很不错
      

  4.   

    将FD_CLOSE消息捆绑到你的ClientSocket上