httpQueryServiceConfiguration 函数 (http.h)

HttpQueryServiceConfiguration 函数检索一个或多个 HTTP 服务器 API 配置记录。

语法

HTTPAPI_LINKAGE ULONG HttpQueryServiceConfiguration(
  [in]                HANDLE                 ServiceHandle,
  [in]                HTTP_SERVICE_CONFIG_ID ConfigId,
  [in, optional]      PVOID                  pInput,
  [in, optional]      ULONG                  InputLength,
  [in, out, optional] PVOID                  pOutput,
  [in, optional]      ULONG                  OutputLength,
  [out, optional]     PULONG                 pReturnLength,
  [in]                LPOVERLAPPED           pOverlapped
);

参数

[in] ServiceHandle

保留。 必须为零。

[in] ConfigId

配置记录查询类型。 此参数是 中以下值之一
HTTP_SERVICE_CONFIG_ID 枚举。

ConfigId 含义
HttpServiceConfigIPListenList
查询 IP 侦听列表。
HttpServiceConfigsSlCertInfo
在 SSL 存储中查询特定证书记录。
HttpServiceConfigUrlAclInfo
查询 URL 预留信息。
HttpServiceConfigTimeout
查询 HTTP 服务器 API 范围的连接超时。

Windows Vista 及更高版本: 支持此枚举。

HttpServiceConfigSslSniCertInfo
查询 SSL 服务器名称指示 (SNI) 存储以获取特定证书记录。

Windows 8 及更高版本:支持此枚举值。

HttpServiceConfigSslCcsCertInfo
在端口上查询 SSL 集中式证书存储 (CCS) 记录的 SSL 配置。 端口由传递给 pInputConfigInfo 参数的 HTTP_SERVICE_CONFIG_SSL_CCS_QUERY 结构的 KeyDesc 成员指定。

Windows 8 及更高版本:支持此枚举值。

[in, optional] pInput

指向 结构的指针,该结构的内容进一步定义与下表中的 ConfigId 关联的查询和类型的 。

ConfigId 含义
HttpServiceConfigIPListenList
无输入数据;设置为 NULL
HttpServiceConfigsSlCertInfo

HTTP_SERVICE_CONFIG_SSL_QUERY 结构。

HttpServiceConfigUrlAclInfo

HTTP_SERVICE_CONFIG_URLACL_QUERY 结构。

HttpServiceConfigTimeout

HTTP_SERVICE_CONFIG_TIMEOUT_KEY 结构。

Windows Vista 及更高版本: 支持此结构。

HttpServiceConfigSslSniCertInfo

HTTP_SERVICE_CONFIG_SSL_SNI_QUERY 结构。

Windows 8 及更高版本:支持此结构。

HttpServiceConfigSslCcsCertInfo

HTTP_SERVICE_CONFIG_SSL_CCS_QUERY 结构。

Windows 8 及更高版本:支持此结构。

 

有关详细信息,请参阅相应的查询结构。

[in, optional] InputLength

pInputConfigInfo 缓冲区的大小(以字节为单位)。

[in, out, optional] pOutput

指向在其中返回查询结果的缓冲区的指针。 此缓冲区的类型与 ConfigId 相关联。

ConfigId 含义
HttpServiceConfigIPListenList

HTTP_SERVICE_CONFIG_IP_LISTEN_QUERY 结构。

HttpServiceConfigsSlCertInfo

HTTP_SERVICE_CONFIG_SSL_SET 结构。

HttpServiceConfigUrlAclInfo

HTTP_SERVICE_CONFIG_URLACL_SET 结构。

HttpServiceConfigTimeout

HTTP_SERVICE_CONFIG_TIMEOUT_PARAM 数据类型。

Windows Vista 及更高版本: 支持此结构。

HttpServiceConfigSslSniCertInfo

HTTP_SERVICE_CONFIG_SSL_SNI_SET 结构。

Windows 8 及更高版本:支持此结构。

HttpServiceConfigSslCcsCertInfo

HTTP_SERVICE_CONFIG_SSL_CCS_SET 结构。

Windows 8 及更高版本:支持此结构。

[in, optional] OutputLength

pOutputConfigInfo 缓冲区的大小(以字节为单位)。

[out, optional] pReturnLength

指向变量的指针,该变量接收要写入输出缓冲区中的字节数。 如果输出缓冲区太小,调用将失败,返回值为 ERROR_INSUFFICIENT_BUFFERpReturnLength 指向的值可用于确定缓冲区成功调用所需的最小长度。

[in] pOverlapped

保留用于异步操作,并且必须设置为 NULL

返回值

如果函数成功,则返回值 NO_ERROR

如果函数失败,则返回值为以下错误代码之一。

含义
ERROR_INVALID_PARAMETER
其中一个参数无效。
ERROR_INSUFFICIENT_BUFFER
pOutputConfigInfo 指向的缓冲区太小,无法接收输出数据。 再次调用函数,缓冲区的大小至少与 退出时 pReturnLength 指向的大小一样大。
ERROR_MORE_DATA
pOutputConfigInfo 指向的缓冲区太小,无法接收输出数据。 再次调用函数,缓冲区的大小至少与 退出时 pReturnLength 指向的大小一样大。
ERROR_NO_MORE_ITEMS
没有满足指定条件的要返回的更多项。
其他
WinError.h 中定义的 系统错误代码

要求

   
最低受支持的客户端 Windows Vista、Windows XP SP2 [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 http.h
Library Httpapi.lib
DLL Httpapi.dll

另请参阅

HTTP 服务器 API 版本 1.0 函数

HttpDeleteServiceConfiguration

HttpSetServiceConfiguration

HttpUpdateServiceConfiguration