我使用了一个用于创建套接字连接的组件。现在,我有一个客户端和服务器,可以通过该组件相互连接。但我的问题是:当发生某些错误时,我得到了如下消息:
System.Net.Sockets.SocketException (0x80004005): No connection could be made because the target machine actively refused it
我想知道此代码(0x80004005)与MSDN WebSite中的 Winsock错误代码之间是否有任何关系 ?此代码是什么意思?它显示值错误代码吗?或类似的东西?
实际上我想获得相关的值,10061
但我不知道如何通过字符串值来获得它。感谢您的帮助。
异常对象的ErrorCode属性包含套接字错误代码。错误代码列表在此处定义。
您遇到的错误是WSAECONNREFUSED 10061
顺便说一句,您必须捕获SocketException而不是常规的Exception才能获取错误代码。
try { } catch (System.Net.Sockets.SocketException sockEx) { int errorCode = sockEx.ErrorCode; }
但是,如果要获取本机错误代码,则可以sockEx.NativeErrorCode
改用。