将套接字错误值转换为字符串消息
本文关键字:字符串 消息 转换 套接字 错误 | 更新日期: 2023-09-27 18:21:32
具有SocketError
值,如何将其转换为相应的字符串消息?
背景和示例:
失败的调用,例如 Socket.Receive
会抛出一个SocketException
,例如 Message
"远程主机强行关闭了现有连接",SocketErrorCode == SocketError.ConnectionReset
。但是,打电话给Socket.ReceiveAsync
只会给一个SocketError == SocketError.ConnectionReset
。
有了这个SocketError.ConnectionReset
(或任何其他值(,我如何获得相应的消息?
可以做到
- 使用
FormatMessage
API 函数(将SocketError
转换为int
(, -
或更简单,通过
new Win32Exception((int) mySocketError).Message