![如何解决 Windows 错误 #10057 套接字未在网络级别连接?](https://linux22.com/image/739077/%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20Windows%20%E9%94%99%E8%AF%AF%20%2310057%20%E5%A5%97%E6%8E%A5%E5%AD%97%E6%9C%AA%E5%9C%A8%E7%BD%91%E7%BB%9C%E7%BA%A7%E5%88%AB%E8%BF%9E%E6%8E%A5%EF%BC%9F.png)
https://docs.microsoft.com/en-us/windows/desktop/winsock/windows-sockets-error-codes-2说,#10057 的原因是
由于套接字未连接且(使用 sendto 在数据报套接字上发送时)未提供地址,因此不允许发送或接收数据的请求。任何其他类型的操作也可能返回此错误 — 例如,如果连接已重置,setsockopt 将设置 SO_KEEPALIVE。
作为一名程序员,我知道这意味着什么 -在尝试调用此套接字上的任何其他操作(例如)之前,我应该绑定套接字(通过或 API 命令)。connect
由于我的实现使用了 Delphi Indy 库,因此我意识到函数的问题accept
send
receive
connected
https://stackoverflow.com/questions/5852359/tcpclient-connected-problem-in-delphi-indy。但我已在软件中控制了所有这些,它在许多网络环境中运行良好。但一次本地网络访问几乎不断(90% 的情况下)产生 #10057 错误。
所以 - 这不可能是编程错误,应该是网络设置的问题。所以 - 我的问题是 - 如何解决网络故障以捕获 #10057 错误?
也许防病毒软件正在阻止该端口上的应用程序或应用程序的访问,并且此类清单显示为#10057?