勇芳软件工作室.汉化:  WinHTTP Reference > WinHTTP Functions >

WinHttpSetOption

Previous pageReturn to chapter overviewNext page

描述

 

WinHttpSetOption功能设置Internet选项。

 

C / C ++语法

 

BOOL WinHttpSetOption(

HINTERNET hInternet,

DWORD dwOption,

LPVOID lpBuffer,

DWORD dwBufferLength

);

 

PowerBASIC 语法

 

FUNCTION WinHttpSetOption ( _

BYVAL hInternet AS DWORD, _

BYVAL dwOption AS DWORD, _

BYVAL lpBuffer AS DWORD, _

BYVAL dwBufferLength AS DWORD _

) AS LONG

 

参数

 

hInternet

 

[in]要设置数据的HINTERNET句柄。请注意,这可以是会话句柄或请求句柄,具体取决于要设置的选项。有关如何确定哪个句柄适用于设置特定选项的更多信息,请参阅选项标志.

 

dwOption

 

[in]包含要设置的Internet选项的无符号长整型值。这可以是选项标志值之一。

 

lpBuffer

 

[in]指向包含选项设置的缓冲区的指针。

 

dwBufferLength

 

[in]无符号长整数值,包含lpBuffer缓冲区的长度。缓冲区的长度用以下选项的字符指定;对于所有其他选项,长度以字节指定。

 

·WINHTTP_OPTION_USER_NAME
·WINHTTP_OPTION_PASSWORD
·WINHTTP_OPTION_PROXY_USER_NAME
·WINHTTP_OPTION_PROXY_PASSWORD
·WINHTTP_OPTION_USER_AGENT

 

返回值

 

如果成功,返回一个有效的会话句柄,否则返回NULL。要检索扩展错误信息,请调用GetLastError.返回的错误代码有:

 

错误代码

描述

ERROR_WINHTTP_INCORRECT_HANDLE_STATE

所请求的操作不能执行,因为提供的手柄不在正确的状态。

ERROR_WINHTTP_INCORRECT_HANDLE_TYPE

提供的手柄类型对于此操作是不正确的。

ERROR_WINHTTP_INTERNAL_ERROR

发生内部错误。

ERROR_WINHTTP_INVALID_OPTION

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

ERROR_WINHTTP_OPTION_NOT_SETTABLE

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

ERROR_NOT_ENOUGH_MEMORY

没有足够的内存来完成请求的操作。(Windows错误代码)

 

备注

 

传递给WinHttpSetOption的证书可能会以明文形式发送。强烈建议您使用WinHttpQueryAuthSchemesWinHttpSetCredentials而不是WinHttpSetOption设置凭据。

 

注意但是,使用Passport身份验证时,响应407状态代码的WinHTTP应用程序必须使用WinHttpSetOption提供代理凭据而不是WinHttpSetCredentials.只有使用护照身份验证时才是这样。在所有其他情况下,请使用WinHttpSetCredentials.

 

即使在异步模式下使用WinHTTP(即,当WinHttpOpen中设置了WINHTTP_FLAG_ASYNC)时,此函数将同步运行。返回值表示成功或失败。要获取扩展错误信息,请调用GetLastError.

 

如果指定了无法设置的选项标志,GetLastError将返回错误ERROR_INVALID_PARAMETER。

 

有关WinHttpSetOption的详细信息和代码示例,请参阅WinHTTP认证.