0

我们正在为 c sharp.net 实现 VB6 代码以进行客户端服务器通信。在VB6中用于通信使用Winsock控件并检查客户端/远程连接状态是否可用。在 C sharp 中,我们使用 tcplistner 类和 socket 类进行通信。但是我们不知道如何检查远程/客户端的状态是否已连接。

套接程序, ASP.Net C#, VS2008

VB6 代码

'checking socket status

if CommForm.Sock(i).State <> sckClosed then
s="Connection opened"
else
s="Connection closed"
end if

Public Function GetSockStatus()
{
  Select Case CommForm.Sock(i).State
  Case sckClosed
    GetSockStatus = "Closed"
  Case sckOpen
    GetSockStatus = "Open"
  Case sckListening
    GetSockStatus = "Listening"
  Case sckConnectionPending
    GetSockStatus = "Connection pending"
  Case sckResolvingHost
    GetSockStatus = "Resolving host"
  Case sckHostResolved
    GetSockStatus = "Host resolved"
  Case sckConnecting
    GetSockStatus = "Connecting"


}

C#代码:

对于代码 CommForm.Sock(i).State <> sckClosed ,我尝试在 ASP.net C#

  if(!client.Connected)

客户端是 .net 中的 sockect 对象

但是我在 .net 中找不到任何等效的 CommForm.Sock(i).State 代码,有一个返回 True/False 的 .poll,但是还有其他可以像在 VB6 WinSock 中那样为我们提供套接字状态的代码。

4

0 回答 0