荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: qyf (奋起), 信区: Visual
标  题: Windows Sockets错误码
发信站: 荔园晨风BBS站 (Mon Oct 27 11:14:00 2003), 转信

     Windows Sockets在头文件winsock.h中定义了所有的错误码,它们包括以“
WSA”打头的Windows Sockets实现返回的错误码和Berkeley Sockets定义的错误码
全集。定义Berkeley Sockets错误码是为了确保原有软件的可移植性。

        下表列出了WSAGetLastError()函数返回的可能错误码和它们的解释,它
们可分为四个部分。



Windows Sockets错误码
 Berkeley 对应错误码
 错误号
          解             释

WSAEINTR
 EINTR
 10004
 同标准C

WSAEBADF
 EBADF
 10009
 同标准C

WSAEACCES
 EACCES
 10013
 同标准C

WSAEFAULT
 EFAULT
 10014
 同标准C

WSAEINVAL
 EINVAL
 10022
 同标准C

WSAEMFILE
 EMFILE
 10024
 同标准C

WSAEWOULDBLOCK
 EWOULDBLOCK
 10035
 同BSD

WSAEINPROGRESS
 EINPROGRESS
 10036
 当一个阻塞函数正在进行时,调用任何Windows Sockets API函数均返回此错误

WSAEALREADY
 EALREADY
 10037
 同BSD

WSAENOTSOCK
 ENOTSOCK
 10038
 同BSD

WSAEDESTADDRREQ
 EDESTADDRREQ
 10039
 同BSD

WSAEMSGSIZE
 EMSGSIZE
 10040
 同BSD

WSAEPROTOTYPE
 EPROTOTYPE
 10041
 同BSD

WSAENOPROTOOPT
 ENOPROTOOPT
 10042
 同BSD

WSAEPROTONOSUPPORT
 EPROTONOSUPPORT
 10043
 同BSD

WSAESOCKTNOSUPPORT
 ESOCKTNOSUPPORT
 10044
 同BSD

WSAEOPNOTSUPP
 EOPNOTSUPP
 10045
 同BSD

WSAEPFNOSUPPORT
 EPFNOSUPPORT
 10046
 同BSD

WSAEAFNOSUPPORT
 EAFNOSUPPORT
 10047
 同BSD

WSAEADDRINUSE
 EADDRINUSE
 10048
 同BSD

WSAEADDRNOTAVAIL
 EADDRNOTAVAIL
 10049
 同BSD

WSAENETDOWN
 ENETDOWN
 10050
 同BSD。任何时候只要Windows Sockets实现检测到网络子系统失败,它就报告此
错误。

WSAENETUNREACH
 ENETUNREACH
 10051
 同BSD

WSAENETRESET
 ENETRESET
 10052
 同BSD

WSAECONNABORTED
 ECONNABORTED
 10053
 同BSD

WSAECONNRESET
 ECONNRESET
 10054
 同BSD

WSAENOBUFS
 ENOBUFS
 10055
 同BSD

WSAEISCONN
 EISCONN
 10056
 同BSD

WSAENOTCONN
 ENOTCONN
 10057
 同BSD

WSAESHUTDOWN
 ESHUTDOWN
 10058
 同BSD

WSAETOOMANYREFS
 ETOOMANYREFS
 10059
 同BSD

WSAETIMEDOUT
 ETIMEDOUT
 10060
 同BSD

WSAECONNREFUSED
 ECONNREFUSED
 10061
 同BSD

WSAELOOP
 ELOOP
 10062
 同BSD

WSAENAMETOOLONG
 ENAMETOOLONG
 10063
 同BSD

WSAEHOSTDOWN
 EHOSTDOWN
 10064
 同BSD

WSAEHOSTUNREACH
 EHOSTUNREACH
 10065
 同BSD

WSASYSNOTREADY

 10091
 由WSAStartup() 返回,指示网络子系统无法使用。

WSAVERNOTSUPPORTED

 10092
 由WSAStartup() 返回,指示Windows Sockets
DLL 不能支持此应用程序。

WSANOTINITIALISED

 10093
 由除WSAStartup()之外的其它函数返回,指示 尚没有一次成功的WSAStartup()
调用执行过。

WSAHOST_NOT_FOUND
 HOST_NOT_FOUND
 11001
 同BSD

WSATRY_AGAIN
 TRY_AGAIN
 11002
 同BSD

WSANO_RECOVERY
 NO_RECOVERY
 11003
 同BSD

WSANO_DATA
 NO_DATA
 11004
 同BSD




        错误码的第一部分是用来解决在不同的C编译中对标准C错误码的不一致的
定义。错误码的第二部分是标准Berkeley Sockets错误码的Windows Sockets版本
。错误码的第三部分包括特定Windows Sockets扩充的错误码。错误码的第四部分
由Windows Sockets的getXbyY()和WSAAsyncGetXByY()函数返回,相当于Berkeley
软件中由变量h_errno返回的错误(事实上,Windows Sockets在头文件winsock.h
中已将h_error定义成其值为WSAGetLastError()的一个宏),它们相当于由域名服
务(Domain Name Service)返回的各种失败。如果Windows Sockets实现没有使用
域名服务,它将使用最合适的代码。一般地,Windows Sockets应用程序应该将错
误WSAHOST_NOT_FOUND和WSANO_DATA解释为指示关键字(名字,地址等)没有找着
,而错误WSATRY_AGAIN和WSANO_RECOVERY是提醒名字服务自身是非操作的。

        错误码由Windows Sockets 规范定义,在所有同一版本规范的Windows
Sockets兼容实现中,它们是一致的。



--

   与其浑浑噩噩地生,不如轰轰烈烈地死

   软件协会欢迎每一位有志献身于民族软件事业发展的同仁加盟。

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.182]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店