httpQueryServerSessionProperty 函数 (http.h)
HttpQueryServerSessionProperty 函数查询指定服务器会话上的服务器属性。
语法
HTTPAPI_LINKAGE ULONG HttpQueryServerSessionProperty(
[in] HTTP_SERVER_SESSION_ID ServerSessionId,
[in] HTTP_SERVER_PROPERTY Property,
[out] PVOID PropertyInformation,
[in] ULONG PropertyInformationLength,
[out, optional] PULONG ReturnLength
);
参数
[in] ServerSessionId
为其返回属性设置的服务器会话。
[in] Property
描述所查询的属性类型的 HTTP_SERVER_PROPERTY 枚举的成员。 这可以是以下其中一种。
[out] PropertyInformation
指向接收属性数据的缓冲区的指针。
pPropertyInformation 基于设置的属性指向以下属性数据结构之一。
属性 | 结构 |
---|---|
HttpServerStateProperty | HTTP_STATE_INFO |
HttpServerQosProperty | HTTP_QOS_SETTING_INFO |
HttpServerTimeoutsProperty | HTTP_TIMEOUT_LIMIT_INFO |
HttpServerAuthenticationProperty | HTTP_SERVER_AUTHENTICATION_INFO |
HttpServerChannelBindProperty | HTTP_CHANNEL_BIND_INFO |
[in] PropertyInformationLength
pPropertyInformation 参数指向的缓冲区的长度(以字节为单位)。
[out, optional] ReturnLength
pPropertyInformation 缓冲区中返回的数字(以字节为单位)。
如果输出缓冲区太小,调用将失败,返回值为 ERROR_MORE_DATA。 pReturnLength 指向的值可用于确定调用成功所需的缓冲区的最小长度。
返回值
如果函数成功,则返回 NO_ERROR
如果该函数失败,它将返回以下错误代码之一。
值 | 含义 |
---|---|
|
服务器会话不支持 Property 参数中指定的属性类型。
ServerSessionId 参数不包含有效的服务器会话。 pPropertyInformation 参数为 NULL。 PropertyInformationLength 参数为零。 应用程序没有查询服务器会话属性的权限。 只有创建服务器会话的应用程序才能查询属性。 |
|
pPropertyInformation 参数指向的缓冲区的大小(以字节为单位)太小,无法接收属性数据。 退出时,再次调用函数,其缓冲区大小至少与 退出时 pReturnLength 指向的大小一样大。 |
注解
不支持查询 HttpServerLoggingProperty 。
pPropertyInformation 参数指向所查询的属性类型的配置结构。 PropertyInformationLength 参数指定配置结构的大小(以字节为单位)。 例如,查询 HttpServerTimeoutsProperty 时, pPropertyInformation 参数必须指向至少是 HTTP_TIMEOUT_LIMIT_INFO 结构大小的缓冲区。
若要在 pPropertyInformation 参数中指定 HttpServerQosProperty 属性,请在 HTTP_QOS_SETTING_INFO 结构中将 QosType 设置为 HttpQosSettingTypeBandwidth,并在 参数中传递指向此结构的指针。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | http.h |
Library | Httpapi.lib |
DLL | Httpapi.dll |