错误消息 (Winhttp.h)

当其中一个 Microsoft Windows HTTP Services (WinHTTP) 函数失败时,GetLastError 会返回下面列出的错误值,并且也会在 WinHttpRequest 对象返回的较低 16 位 HRESULT 错误中返回。

名称以“ERROR_WINHTTP_”开头的错误值特定于 WinHTTP 函数。 WinHTTP 函数还会在适当情况下返回 Windows 错误消息。

ERROR_WINHTTP_AUTO_PROXY_SERVICE_ERROR

12178

当无法找到指定 URL 的代理时, 由 WinHttpGetProxyForUrl 返回。

ERROR_WINHTTP_AUTODETECTION_FAILED

12180

如果 WinHTTP 无法发现代理自动配置 (PAC) 文件的 URL,则由 WinHttpDetectAutoProxyConfigUrl 返回。

ERROR_WINHTTP_BAD_AUTO_PROXY_SCRIPT

12166

执行代理自动配置 (PAC) 文件中的脚本代码时出错。

ERROR_WINHTTP_CANNOT_CALL_AFTER_OPEN

12103

如果在调用 Open 方法后无法请求指定选项,则由 HttpRequest 对象返回。

ERROR_WINHTTP_CANNOT_CALL_AFTER_SEND

12102

如果调用 Send 方法后无法执行请求的操作,则由 HttpRequest 对象返回。

ERROR_WINHTTP_CANNOT_CALL_BEFORE_OPEN

12100

如果在调用 Open 方法之前无法执行请求的操作,则由 HttpRequest 对象返回。

ERROR_WINHTTP_CANNOT_CALL_BEFORE_SEND

12101

如果在调用 Send 方法之前无法执行请求的操作,则由 HttpRequest 对象返回。

ERROR_WINHTTP_CANNOT_CONNECT

12029

如果与服务器的连接失败,则返回 。

ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED

服务器需要 SSL 客户端身份验证。 应用程序通过使用 WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST 选项调用 WinHttpQueryOption 来检索证书颁发者列表。 有关详细信息,请参阅 WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST 选项。

如果服务器请求客户端证书,但不需要它,应用程序可以使用 WINHTTP_OPTION_CLIENT_CERT_CONTEXT 选项交替调用 WinHttpSetOption。 在这种情况下,应用程序在 WinHttpSetOptionlpBuffer 参数中指定WINHTTP_NO_CLIENT_CERT_CONTEXT宏。 有关详细信息,请参阅 WINHTTP_OPTION_CLIENT_CERT_CONTEXT 选项。

带 SP1 的 Windows Server 2003 和 SP2 的 Windows XP: 不支持此错误。

ERROR_WINHTTP_CLIENT_CERT_NO_ACCESS_PRIVATE_KEY

应用程序没有访问与客户端证书关联的私钥所需的权限。

带 SP1 的 Windows Server 2003 和 SP2 的 Windows XP: 不支持此错误。

ERROR_WINHTTP_CLIENT_CERT_NO_PRIVATE_KEY

SSL 客户端证书的上下文没有与之关联的私钥。 客户端证书可能已导入到没有私钥的计算机。

带 SP1 的 Windows Server 2003 和 SP2 的 Windows XP: 不支持此错误。

ERROR_WINHTTP_CHUNKED_ENCODING_HEADER_SIZE_OVERFLOW

12183

在分析分块编码过程中遇到溢出条件时 ,由 WinHttpReceiveResponse 返回。

ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED

12044

服务器请求客户端身份验证时由 WinHttpReceiveResponse 返回。

带 SP1 的 Windows Server 2003 和 SP2 的 Windows XP: 不支持此错误。

ERROR_WINHTTP_CONNECTION_ERROR

12030

与服务器的连接已重置或终止,或者遇到不兼容的 SSL 协议。 例如,WinHTTP 版本 5.1 不支持 SSL2,除非客户端专门启用 SSL2。

ERROR_WINHTTP_HEADER_ALREADY_EXISTS

12155

过时;不再使用。

ERROR_WINHTTP_HEADER_COUNT_EXCEEDED

12181

当响应中存在的标头数量超过 WinHTTP 可以接收的数量时,由 WinHttpReceiveResponse 返回。

ERROR_WINHTTP_HEADER_NOT_FOUND

12150

无法找到请求的标头。

ERROR_WINHTTP_HEADER_SIZE_OVERFLOW

12182

当收到的标头的大小超过请求句柄的限制时, 由 WinHttpReceiveResponse 返回。

ERROR_WINHTTP_INCORRECT_HANDLE_STATE

12019

无法执行请求的操作,因为提供的句柄未处于正确的状态。

ERROR_WINHTTP_INCORRECT_HANDLE_TYPE

12018

为此操作提供的句柄类型不正确。

ERROR_WINHTTP_INTERNAL_ERROR

12004

发生了内部错误。

ERROR_WINHTTP_INVALID_OPTION

12009

WinHttpQueryOptionWinHttpSetOption 的请求指定了无效的选项值。

ERROR_WINHTTP_INVALID_QUERY_REQUEST

12154

过时;不再使用。

ERROR_WINHTTP_INVALID_SERVER_RESPONSE

12152

无法分析服务器响应。

ERROR_WINHTTP_INVALID_URL

12005

此 URL 无效。

ERROR_WINHTTP_LOGIN_FAILURE

12015

登录尝试失败。 遇到此错误时,应使用 WinHttpCloseHandle 关闭请求句柄。 在重试最初生成此错误的函数之前,必须创建新的请求句柄。

ERROR_WINHTTP_NAME_NOT_RESOLVED

12007

无法解析服务器名称。

ERROR_WINHTTP_NOT_INITIALIZED

12172

过时;不再使用。

ERROR_WINHTTP_OPERATION_CANCELLED

12017

该操作被取消,通常是因为操作完成之前,操作所针对的句柄已关闭。

ERROR_WINHTTP_OPTION_NOT_SETTABLE

12011

无法设置请求的选项,只能查询。

ERROR_WINHTTP_OUT_OF_HANDLES

12001

过时;不再使用。

ERROR_WINHTTP_REDIRECT_FAILED

12156

重定向失败,因为方案已更改,或者重定向的所有尝试都失败 (默认为五次尝试) 。

ERROR_WINHTTP_RESEND_REQUEST

12032

WinHTTP 函数失败。 可以在同一请求句柄上重试所需的函数。

ERROR_WINHTTP_RESPONSE_DRAIN_OVERFLOW

12184

当传入的响应超过内部 WinHTTP 大小限制时返回。

ERROR_WINHTTP_SCRIPT_EXECUTION_ERROR

12177

执行脚本时遇到错误。

ERROR_WINHTTP_SECURE_CERT_CN_INVALID

12038

当证书 CN 名称与传递的值不匹配 (等效于 ) CERT_E_CN_NO_MATCH 错误时返回。

ERROR_WINHTTP_SECURE_CERT_DATE_INVALID

12037

指示针对当前系统时钟或已签名文件中的时间戳进行验证时,所需证书未在其有效期内,或者认证链的有效期未正确嵌套 (等效于 CERT_E_EXPIREDCERT_E_VALIDITYPERIODNESTING 错误) 。

ERROR_WINHTTP_SECURE_CERT_REV_FAILED

12057

指示无法检查吊销,因为吊销服务器处于脱机状态 (等效 于CRYPT_E_REVOCATION_OFFLINE) 。

ERROR_WINHTTP_SECURE_CERT_REVOKED

12170

指示证书已吊销 (等效于 CRYPT_E_REVOKED) 。

ERROR_WINHTTP_SECURE_CERT_WRONG_USAGE

12179

指示证书对于请求的用法无效, (等效于 CERT_E_WRONG_USAGE) 。

ERROR_WINHTTP_SECURE_CHANNEL_ERROR

12157

指示发生错误与安全通道 (等效于以“winerror.h”头文件) 中列出的“SEC_E_”和“SEC_I_”开头的错误代码。

ERROR_WINHTTP_SECURE_FAILURE

12175

在服务器发送的安全套接字层 (SSL) 证书中发现一个或多个错误。 若要确定遇到的错误类型,检查状态回调函数中的WINHTTP_CALLBACK_STATUS_SECURE_FAILURE通知。 有关详细信息,请参阅 WINHTTP_STATUS_CALLBACK

ERROR_WINHTTP_SECURE_INVALID_CA

12045

指示证书链已处理,但在信任提供程序不信任的根证书中终止, (等效于 CERT_E_UNTRUSTEDROOT) 。

ERROR_WINHTTP_SECURE_INVALID_CERT

12169

指示证书无效 (等效于CERT_E_ROLECERT_E_PATHLENCONST、CERT_E_CRITICALCERT_E_PURPOSECERT_E_ISSUERCHAININGCERT_E_MALFORMEDCERT_E_CHAINING) 等错误。

ERROR_WINHTTP_SHUTDOWN

12012

WinHTTP 函数支持正在关闭或卸载。

ERROR_WINHTTP_TIMEOUT

12002

请求已超时。

无论 Windows HTTP 服务中设置的超时值如何,都可能由于 TCP/IP 超时行为而返回此错误。

ERROR_WINHTTP_UNABLE_TO_DOWNLOAD_SCRIPT

12167

无法下载 PAC 文件。 例如,PAC URL 引用的服务器可能无法访问,或者服务器返回了 404 NOT FOUND 响应。

ERROR_WINHTTP_UNHANDLED_SCRIPT_TYPE

12176

不支持脚本类型。

ERROR_WINHTTP_UNRECOGNIZED_SCHEME

12006

URL 指定了“http:”或“https:”以外的方案。

ERROR_NOT_ENOUGH_MEMORY

内存不足,无法完成请求的操作。

头: 在 Winerror.h 中声明

ERROR_INSUFFICIENT_BUFFER

提供给函数的缓冲区的大小(以字节为单位)不足以包含返回的数据。 有关详细信息,请参阅特定函数。

头: 在 Winerror.h 中声明

ERROR_INVALID_HANDLE

传递到应用程序编程接口 (API) 的句柄已失效或关闭。

头: 在 Winerror.h 中声明

ERROR_NO_MORE_FILES

找不到更多文件。

头: 在 Winerror.h 中声明

ERROR_NO_MORE_ITEMS

未找到更多项目。

头: 在 Winerror.h 中声明

ERROR_NOT_SUPPORTED

未加载所需的协议堆栈,并且应用程序无法启动 WinSock。

头: 在 Winerror.h 中声明

备注

对于 Windows XP 和 Windows 2000,请参阅 WinHttp 起始页的 运行时要求 部分。

要求

要求
最低受支持的客户端
Windows XP、Windows 2000 Professional 和 SP3 [仅限桌面应用]
最低受支持的服务器
Windows Server 2003、Windows 2000 Server SP3 [仅限桌面应用]
可再发行组件
Windows XP 和 Windows 2000 上的 WinHTTP 5.0 和 Internet Explorer 5.01 或更高版本。
标头
Winhttp.h

另请参阅

WinHTTP 版本