Winsock 函数
以下列表提供了每个 Winsock 函数的简明说明。 有关任何函数的其他信息,请单击函数名称。
函数 | 说明 |
---|---|
接受 | 允许在套接字上尝试传入连接。 |
AcceptEx | 接受新连接,返回本地和远程地址,并接收客户端应用程序发送的第一个数据块。 |
绑定 | 将本地地址与套接字相关联。 |
closesocket | 关闭现有套接字。 |
连接 | 建立与指定套接字的连接。 |
ConnectEx | 建立与指定套接字的连接,并可以选择在建立连接后发送数据。 仅在面向连接的套接字上受支持。 |
DisconnectEx | 关闭套接字上的连接,并允许重复使用套接字句柄。 |
EnumProtocols | 检索有关本地主机上处于活动状态的一组指定网络协议的信息。 |
freeaddrinfo | 释放 getaddrinfo 函数在 addrinfo 结构中动态分配的地址信息。 |
FreeAddrInfoEx | 释放 GetAddrInfoEx 函数在 addrinfoex 结构中动态分配的地址信息。 |
FreeAddrInfoW | 释放 GetAddrInfoW 函数在 addrinfoW 结构中动态分配的地址信息。 |
gai_strerror | 根据 getaddrinfo 函数返回的 EAI_* 错误,协助打印错误消息。 |
GetAcceptExSockaddrs | 分析从调用 AcceptEx 函数获取的数据。 |
GetAddressByName | 查询一个命名空间或一组默认命名空间,以检索指定网络服务的网络地址信息。 此过程称为服务名称解析。 网络服务还可以使用 函数来获取可与 绑定 函数一起使用的本地地址信息。 |
getaddrinfo | 提供从 ANSI 主机名到地址的与协议无关的转换。 |
GetAddrInfoEx | 提供与协议无关的名称解析以及附加参数,以限定哪些名称空间提供程序应处理请求。 |
GetAddrInfoExCancel | 通过 GetAddrInfoEx 函数取消异步操作。 |
GetAddrInfoExOverlappedResult | 获取 GetAddrInfoEx 函数的异步操作使用的 OVERLAPPED 结构的返回代码。 |
GetAddrInfoW | 提供从 Unicode 主机名到地址的与协议无关的转换。 |
gethostbyaddr | 检索与网络地址对应的主机信息。 |
gethostbyname | 从主机数据库中检索与主机名对应的主机信息。 已弃用:请改用 getaddrinfo 。 |
gethostname | 检索本地计算机的标准主机名。 |
GetHostNameW | 检索本地计算机的标准主机名作为 Unicode 字符串。 |
getipv4sourcefilter | 检索 IPv4 套接字的多播筛选器状态。 |
GetNameByType | 检索指定服务类型的网络服务的名称。 |
getnameinfo | 提供从 IPv4 或 IPv6 地址到 ANSI 主机名以及从端口号到 ANSI 服务名称的名称解析。 |
GetNameInfoW | 提供从 IPv4 或 IPv6 地址到 Unicode 主机名以及从端口号到 Unicode 服务名称的名称解析。 |
getpeername | 检索套接字所连接到的对等方的地址。 |
getprotobyname | 检索与协议名称对应的协议信息。 |
getprotobynumber | 检索与协议编号对应的协议信息。 |
getservbyname | 检索与服务名称和协议对应的服务信息。 |
getservbyport | 检索与端口和协议对应的服务信息。 |
GetService | 在一组默认命名空间或指定命名空间的上下文中检索有关网络服务的信息。 |
getsockname | 检索套接字的本地名称。 |
getsockopt | 检索套接字选项。 |
getsourcefilter | 检索 IPv4 或 IPv6 套接字的多播筛选器状态。 |
GetTypeByName | 检索由名称指定的网络服务的服务类型 GUID。 |
htond | 将 双精度 从主机转换为 TCP/IP 网络字节顺序 (这是大端) 。 |
htonf | 将 浮点 数从主机转换为 TCP/IP 网络字节顺序 (这是大端) 。 |
htonl | 将 u_long 从主机转换为 TCP/IP 网络字节顺序 (这是大端) 。 |
htonll | 将主机中的 无符号__int64 转换为 TCP/IP 网络字节顺序 (这是大端) 。 |
htons | 将 u_short 从主机转换为 TCP/IP 网络字节顺序 (这是 big-endian) 。 |
inet_addr | 将包含 (Ipv4) Internet 协议虚线地址的字符串转换为 in_addr 结构的正确地址。 |
inet_ntoa | 将 (IPv4) Internet 网络地址转换为 Internet 标准点格式的字符串。 |
InetNtop | 将 IPv4 或 IPv6 Internet 网络地址转换为 Internet 标准格式的字符串。 此函数的 ANSI 版本 inet_ntop。 |
InetPton | 将标准文本表示形式的 IPv4 或 IPv6 Internet 网络地址转换为数字二进制形式。 此函数的 ANSI 版本 inet_pton。 |
ioctlsocket | 控制套接字的 I/O 模式。 |
listen | 将套接字置于侦听传入连接的状态。 |
ntohd | 将 无符号__int64 从 TCP/IP 网络顺序转换为主机字节顺序 (这是 Intel 处理器) 的 little-endian,并返回 一个双精度值。 |
ntohf | 将 无符号__int32 从 TCP/IP 网络顺序转换为主机字节顺序 (这是 Intel 处理器上的 little-endian) 并返回 浮点数。 |
ntohl | 将u_long从 TCP/IP 网络顺序转换为主机字节顺序 (这是 Intel 处理器) 上的小端。 |
ntohll | 将 未签名__int64 从 TCP/IP 网络顺序转换为主机字节顺序 (这是 Intel 处理器) 上的 little-endian。 |
ntohs | 将u_short从 TCP/IP 网络字节顺序转换为主机字节顺序 (这是 Intel 处理器) 上的 little-endian。 |
recv | 从连接的或绑定的套接字接收数据。 |
recvfrom | 接收数据报并存储源地址。 |
RIOCloseCompletionQueue | 通过使用 Winsock 注册的 I/O 扩展发送和接收请求,关闭用于 I/O 完成通知的现有完成队列。 |
RIOCreateCompletionQueue | 创建特定大小的 I/O 完成队列,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOCreateRequestQueue | 使用指定的套接字和 I/O 完成队列创建已注册的 I/O 套接字描述符,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIODequeueCompletion | 从 I/O 完成队列中删除条目,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIODeregisterBuffer | 取消注册与 Winsock 注册的 I/O 扩展一起使用的已注册缓冲区。 |
RIONotify | 向 I/O 完成队列注册用于通知行为的方法,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOReceive | 在连接的已注册 I/O TCP 套接字或绑定的已注册 I/O UDP 套接字上接收网络数据,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOReceiveEx | 接收连接的已注册 I/O TCP 套接字或绑定的已注册 I/O UDP 套接字上的网络数据,该套接字具有用于 Winsock 注册的 I/O 扩展的其他选项。 |
RIORegisterBuffer | 使用指定的缓冲区注册 RIO_BUFFERID(已注册的缓冲区描述符),以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOResizeCompletionQueue | 将 I/O 完成队列的大小调整为更大或更小,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOResizeRequestQueue | 将请求队列的大小调整为更大或更小,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOSend | 在连接的已注册 I/O TCP 套接字或绑定的已注册 I/O UDP 套接字上发送网络数据,以便与 Winsock 注册的 I/O 扩展一起使用。 |
RIOSendEx | 在连接的已注册 I/O TCP 套接字或绑定的已注册 I/O UDP 套接字上发送网络数据,以及用于 Winsock 注册的 I/O 扩展的其他选项。 |
选择 | 确定一个或多个套接字的状态,如有必要,正在等待执行同步 I/O。 |
发送 | 在连接的套接字上发送数据。 |
sendto | 将数据发送到特定目标。 |
SetAddrInfoEx | 向特定命名空间提供程序注册主机和服务名称以及关联的地址。 |
setipv4sourcefilter | 设置 IPv4 套接字的多播筛选器状态。 |
SetService | 在注册表中注册或删除一个或多个命名空间中的网络服务。 还可以在一个或多个命名空间中添加或删除网络服务类型。 |
SetSocketMediaStreamingMode | 指示网络是否用于传输需要服务质量的流媒体。 |
setsockopt | 设置套接字选项。 |
setsourcefilter | 设置 IPv4 或 IPv6 套接字的多播筛选器状态。 |
shutdown | 禁用套接字上的发送或接收。 |
socket | 创建绑定到特定服务提供程序的套接字。 |
TransmitFile | 通过连接的套接字句柄传输文件数据。 |
TransmitPackets | 通过连接的套接字传输内存中数据或文件数据。 |
WSAAccept | 根据条件函数的返回值有条件地接受连接,提供服务质量流规范,并允许传输连接数据。 |
WSAAddressToString | 将 sockaddr 结构的所有组件转换为地址的可读字符串表示形式。 |
WSAAsyncGetHostByAddr | 异步检索对应于地址的主机信息。 |
WSAAsyncGetHostByName | 异步检索与主机名对应的主机信息。 |
WSAAsyncGetProtoByName | 异步检索与协议名称对应的协议信息。 |
WSAAsyncGetProtoByNumber | 异步检索与协议编号对应的协议信息。 |
WSAAsyncGetServByName | 异步检索与服务名称和端口对应的服务信息。 |
WSAAsyncGetServByPort | 异步检索与端口和协议对应的服务信息。 |
WSAAsyncSelect | 请求套接字的网络事件的基于 Windows 消息的通知。 |
WSACancelAsyncRequest | 取消不完整的异步操作。 |
WSACleanup | 终止Ws2_32.DLL的使用。 |
WSACloseEvent | 关闭打开的事件对象句柄。 |
WSAConnect | 建立与另一个套接字应用程序的连接,交换连接数据,并根据指定的 FLOWSPEC 结构指定所需的服务质量。 |
WSAConnectByList | 建立与一组可能终结点的连接,这些终结点由一组目标地址表示 (主机名和端口) 。 |
WSAConnectByName | 在指定的主机和端口上建立与另一个套接字应用程序的连接 |
WSACreateEvent | 创建新的事件对象。 |
WSADeleteSocketPeerTargetName | 删除套接字的对等目标名称和 IP 地址之间的关联。 |
WSADuplicateSocket | 返回一个结构,该结构可用于为共享套接字创建新的套接字描述符。 |
WSAEnumNameSpaceProviders | 检索有关可用命名空间的信息。 |
WSAEnumNameSpaceProvidersEx | 检索有关可用命名空间的信息。 |
WSAEnumNetworkEvents | 发现指示的套接字的网络事件,清除内部网络事件记录,并重置事件对象 (可选) 。 |
WSAEnumProtocols | 检索有关可用传输协议的信息。 |
WSAEventSelect | 指定要与指定的FD_XXX网络事件集关联的事件对象。 |
__WSAFDIsSet | 指定套接字是否包含在一组套接字描述符中。 |
WSAGetFailConnectOnIcmpError | 查询 TCP_FAIL_CONNECT_ON_ICMP_ERROR 套接字选项的状态。 |
WSAGetIcmpErrorInfo | 在连接设置期间,查询 TCP 套接字上收到的 ICMP 错误的源地址。 |
WSAGetIPUserMtu | 检索套接字的用户定义 IP 层 MTU。 |
WSAGetLastError | 返回上一个失败操作的错误状态。 |
WSAGetOverlappedResult | 检索指定套接字上重叠操作的结果。 |
WSAGetQOSByName | 基于命名模板初始化 QOS 结构,或提供缓冲区以检索可用模板名称的枚举。 |
WSAGetServiceClassInfo | 从指定的命名空间提供程序中检索与指定服务类相关的 (架构) 的类信息。 |
WSAGetServiceClassNameByClassId | 检索与指定类型关联的服务的名称。 |
WSAGetUdpRecvMaxCoalescedSize | 检索 UDP 套接字的已接收合并消息的最大大小。 |
WSAGetUdpSendMessageSize | 检索 UDP 套接字的分段消息大小。 |
WSAHtonl | 将u_long从主机字节顺序转换为网络字节顺序。 |
WSAHtons | 将u_short从主机字节顺序转换为网络字节顺序。 |
WSAImpersonateSocketPeer | 用于模拟对应于套接字对等方的安全主体,以便执行应用程序级授权。 |
WSAInstallServiceClass | 在命名空间中注册服务类架构。 |
WSAIoctl | 控制套接字的模式。 |
WSAJoinLeaf | 将叶节点加入多点会话,交换连接数据,并根据指定的结构指定所需的服务质量。 |
WSALookupServiceBegin | 启动受 WSAQUERYSET 结构中包含的信息约束的客户端查询。 |
WSALookupServiceEnd | 释放以前调用 WSALookupServiceBegin 和 WSALookupServiceNext 使用的句柄。 |
WSALookupServiceNext | 检索请求的服务信息。 |
WSANSPIoctl | 开发人员对已注册的命名空间进行 I/O 控件调用。 |
WSANtohl | 将u_long从网络字节顺序转换为主机字节顺序。 |
WSANtohs | 将u_short从网络字节顺序转换为主机字节顺序。 |
WSAPoll | 确定一个或多个套接字的状态。 |
WSAProviderConfigChange | 更改提供程序配置时通知应用程序。 |
WSAQuerySocketSecurity | 查询有关应用于套接字上的连接的安全性的信息。 |
WSARecv | 接收连接的套接字发出的数据。 |
WSARecvDisconnect | 终止套接字上的接收,如果套接字面向连接,则检索断开连接数据。 |
WSARecvEx | 接收连接的套接字发出的数据。 |
WSARecvFrom | 接收数据报并存储源地址。 |
LPFN_WSARECVMSG (WSARecvMsg) | 从已连接和未连接的套接字接收数据和可选控制信息。 |
WSARemoveServiceClass | 从注册表中永久删除服务类架构。 |
WSAResetEvent | 将指定事件对象的状态重置为未签名。 |
WSARevertImpersonation | 终止套接字对等方的模拟。 |
WSASend | 在连接的套接字上发送数据。 |
WSASendDisconnect | 启动套接字的连接终止并发送断开连接数据。 |
WSASendMsg | 从已连接和未连接的套接字发送数据和可选控制信息。 |
WSASendTo | 在适用的情况下,使用重叠的 I/O 将数据发送到特定目标。 |
WSASetEvent | 将指定事件对象的状态设置为已发出信号。 |
WSASetFailConnectOnIcmpError | 设置 TCP_FAIL_CONNECT_ON_ICMP_ERROR 套接字选项的状态。 |
WSASetIPUserMtu | 在套接字上设置用户定义的 IP 层 MTU。 |
WSASetLastError | 设置错误代码。 |
WSASetService | 在注册表中注册或删除一个或多个命名空间中的服务实例。 |
WSASetSocketPeerTargetName | 用于指定与对等 IP 地址相对应 (SPN) 对等目标名称。 此目标名称应由客户端应用程序指定,以便安全地标识应进行身份验证的对等方。 |
WSASetSocketSecurity | 启用并应用套接字的安全性。 |
WSASetUdpRecvMaxCoalescedSize | 设置 UDP 套接字上集的合并消息的最大大小。 |
WSASetUdpSendMessageSize | 设置 UDP 套接字上的分段消息大小。 |
WSASocket | 创建绑定到特定传输服务提供程序的套接字。 |
WSAStartup | 启动进程对WS2_32.DLL的使用。 |
WSAStringToAddress | 将数值字符串转换为 sockaddr 结构。 |
WSAWaitForMultipleEvents | 当一个或所有指定的事件对象处于信号状态或超时间隔过期时,返回 。 |