WSAGetQOSByName 函数 (winsock2.h)
WSAGetQOSByName 函数基于命名模板初始化 QOS 结构,或者提供缓冲区来检索可用模板名称的枚举。
语法
BOOL WSAAPI WSAGetQOSByName(
[in] SOCKET s,
[in, out] LPWSABUF lpQOSName,
[out] LPQOS lpQOS
);
参数
[in] s
标识套接字的描述符。
[in, out] lpQOSName
指向特定服务质量模板的指针。
[out] lpQOS
指向要填充的 QOS 结构的指针。
返回值
如果 WSAGetQOSByName 成功,则返回值为 TRUE。 如果函数失败,则返回值为 FALSE。 若要获取扩展错误信息,请调用 WSAGetLastError。
错误代码 | 含义 |
---|---|
在使用此函数之前,必须成功调用 WSAStartup 。 | |
网络子系统发生故障。 | |
:描述符不是套接字。 | |
lpQOSName 或 lpQOS 参数不是用户地址空间的有效部分,或者 lpQOS 的缓冲区长度太小。 |
注解
应用程序使用 WSAGetQOSByName 函数将 QOS 结构初始化为适用于特定服务类或媒体类型的一组已知值。 这些值存储在由已知名称引用的模板中。 客户端可以通过设置 lpQOSName 指示的 WSABUF 结构的 buf 参数来检索这些值,该结构指向指定模板名称的非零长度字符串。 在这种情况下, lpQOSName 的使用仅为 IN,结果通过 lpQOS 返回。
或者,客户端可以使用此函数检索可用模板名称的枚举。 客户端可以通过将 lpQOSName 指示的 WSABUF 的 buf 参数设置为零长度 null 结尾的字符串来执行此操作。 在这种情况下,buf 所指示的缓冲区将被覆盖的一系列可用、以 null 结尾的模板名称,最大到 buf 中可用的字节数,如 lpQOSName 所指示的 WSABUF 的 len 参数所指示。 名称列表本身以零长度名称结尾。 使用 WSAGetQOSByName 函数检索模板名称时, 将忽略 lpQOS 参数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | winsock2.h |
Library | Ws2_32.lib |
DLL | Ws2_32.dll |