httpSetServiceConfiguration 函数 (http.h)
HttpSetServiceConfiguration 函数创建并设置 HTTP 服务器 API 配置存储的配置记录。 如果指定的记录已存在,则调用将失败。 若要更改给定的配置记录,请将其删除,然后使用不同的值重新创建它。
语法
HTTPAPI_LINKAGE ULONG HttpSetServiceConfiguration(
[in] HANDLE ServiceHandle,
[in] HTTP_SERVICE_CONFIG_ID ConfigId,
[in] PVOID pConfigInformation,
[in] ULONG ConfigInformationLength,
[in] LPOVERLAPPED pOverlapped
);
参数
[in] ServiceHandle
保留。 必须为零。
[in] ConfigId
要设置的配置记录的类型。 此参数可以是 HTTP_SERVICE_CONFIG_ID 枚举中的下列值之一。
ConfigId 值 | 含义 |
---|---|
|
在 IP 侦听列表中设置记录。 |
|
设置指定的 SSL 证书记录。 |
|
设置 URL 预留记录。 |
|
设置指定的 HTTP 服务器 API 范围连接超时。 Windows Vista 及更高版本: 支持此枚举值。 |
|
设置指定的 SSL 服务器名称指示 (SNI) 证书记录。
Windows 8 及更高版本:支持此枚举值。 |
|
设置 SSL 证书记录,该记录指定如果端口收到传输层安全性 (TLS) 握手,Http.sys 应查阅集中式证书存储 (CCS) 存储来查找证书。 端口由传递给 pConfigInformation 参数的 HTTP_SERVICE_CONFIG_SSL_CCS_SET 结构的 KeyDesc 成员指定。
Windows 8 及更高版本:支持此枚举值。 |
[in] pConfigInformation
指向缓冲区的指针,该缓冲区包含用于指定要设置的记录类型的相应数据。
ConfigId 值 | 含义 |
---|---|
|
|
|
|
|
|
|
HTTP_SERVICE_CONFIG_TIMEOUT_SET 结构。 Windows Vista 及更高版本: 支持此结构。 |
|
HTTP_SERVICE_CONFIG_SSL_SNI_SET 结构。 查询 SSL 中央证书存储并使用通配符绑定时,主机名将为“*”,并且是常规 SNI 的主机名。 Windows 8 及更高版本:支持此结构。 |
|
HTTP_SERVICE_CONFIG_SSL_CCS_SET 结构。 Windows 8 及更高版本:支持此结构。 |
[in] ConfigInformationLength
pConfigInformation 缓冲区的大小(以字节为单位)。
[in] pOverlapped
此参数是保留的,必须为 NULL。
返回值
如果函数成功,则返回值 NO_ERROR。
如果函数失败,则返回值为以下错误代码之一。
值 | 含义 |
---|---|
|
指定的记录已存在,必须删除该记录才能重新设置其值。 |
|
ConfigInformationLength 参数中指定的缓冲区大小不足。 |
|
ServiceHandle 参数无效。 |
|
提供的一个或多个参数以不可用的形式提供。 |
|
使用的 SSL 证书无效。 仅当使用 HttpServiceConfigSSLCertInfo 参数时,才会发生这种情况。 |
|
WinError.h 中定义的 系统错误代码 。 |
注解
使用 HttpSetServiceConfiguration 设置的配置参数将应用于计算机上的所有 HTTP 服务器 API 应用程序,并在 HTTP 服务器 API 关闭或计算机重启时保留。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP SP2 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | http.h |
Library | Httpapi.lib |
DLL | Httpapi.dll |