假如你服务器和客户端都是在C#下完成的话,某一端掉线会向另一端传送一个字符数为0的串,你用
   int bytes = socket.receive(buffer);
   if (bytes==0)
{
}
就行,不过一般测试网络连接是由客户端每搁1秒发送一个特定字符串,服务器接受后,再原样返回。

解决方案 »

  1.   

    要看你的程序怎么写的。
    对每一个连接用户启动线程,绝对使用Socket,其有一属性Alive还是Connected的忘记了,这样搞定。我以前写了个玩玩的。。不过程序拿不出来:))公司能POST的机器只有一台,与开发区的机器“隔离”的!!,没有办法:(
      

  2.   

    回复皮皮:int bytes = socket.receive(buffer);,好像不行
             当客户端掉线时,此行不往下执行,不知道为什么?
    回复人: aspcn(飞刀) ,代码根本就不返回,在
             reader.read(buffer,0,1024)下加断点,当远端断开时,根本
             就不触发断点,真的挠头?
    谁来救我!!!!!!!!!!!
      

  3.   

    所以你的每秒从客户端传一个字符组给SERVER,然后由SERVER返回嘛!
    银行系统都是这样做的
      

  4.   

    怎么能这样做,判断是否连结咋是这样子。我的程序是拿不出来。给你看看这个吧。http://www.codeproject.com/dotnet/dotnetTCP.asp