LPWSPGETQOSBYNAME 回调函数 (ws2spi.h)
WSPGetQOSByName 函数基于命名模板初始化 QOS 结构,或检索可用模板名称的枚举。
语法
LPWSPGETQOSBYNAME Lpwspgetqosbyname;
BOOL Lpwspgetqosbyname(
[in] SOCKET s,
[in, out] LPWSABUF lpQOSName,
[out] LPQOS lpQOS,
[out] LPINT lpErrno
)
{...}
参数
[in] s
标识套接字的描述符。
[in, out] lpQOSName
指定 QOS 模板名称,或提供缓冲区以检索可用模板名称的枚举。
[out] lpQOS
指向要填充的 QOS 结构的指针。
[out] lpErrno
指向错误代码的指针。
返回值
如果函数成功,则返回值为 TRUE。 如果函数失败,则返回值为 FALSE,并且 lpErrno 中提供了特定的错误代码。
错误代码 | 含义 |
---|---|
网络子系统失败。 | |
:描述符不是套接字。 | |
lpQOS 参数不是用户地址空间的有效部分,或者 lpQOS 的缓冲区长度太小。 | |
指定的 QOS 模板名称无效。 |
注解
客户端可以使用 WSPGetQOSByName 将 QOS 结构初始化为适用于特定服务类或媒体类型的一组已知值。 这些值存储在由已知名称引用的模板中。 客户端可以通过将 lpQOSName 指示的 WSABUF 的 buf 成员设置为指向指定模板名称的非零长度 Unicode 字符串来检索这些值。 在这种情况下, lpQOSName 的用法仅为 IN,并且结果通过 lpQOS 返回。
或者,客户端可以使用 LPWSPGetQOSByName 检索可用模板名称的枚举。 客户端可以通过将 lpQOSName 指示的 WSABUF 的 buf 成员设置为以 null 结尾的零长度 Unicode 字符串来执行此操作。 在这种情况下,buf 指示的缓冲区将被一系列以 null 结尾的 Unicode 模板名称字符串覆盖,可用到 buf 中可用的字节数,如 lpQOSName 所指示的 WSABUF 的 len 成员所指示。 名称列表本身由长度为零的 Unicode 名称字符串终止。 使用 LPWSPGetQOSByName 检索模板名称时,将忽略 lpQOS 参数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | ws2spi.h |