描述
WinHttpQueryOption功能查询指定句柄上的Internet选项。
C / C ++语法
BOOL WinHttpQueryOption( HINTERNET hInternet, DWORD dwOption, LPVOID lpBuffer, LPDWORD lpdwBufferLength ); |
PowerBASIC 语法
FUNCTION WinHttpQueryOption ( _ BYVAL hInternet AS DWORD, _ BYVAL dwOption AS DWORD, _ BYVAL lpBuffer AS DWORD, _ BYREF lpdwBufferLength AS DWORD _ ) AS LONG |
参数
hInternet
[in]HINTERNET查询信息的句柄。请注意,这可以是会话句柄或请求句柄,具体取决于正在查询的选项;请参阅选项标志主题,以确定哪个句柄适合用于查询特定选项。
dwOption
[in]包含要查询的Internet选项的无符号长整型值。这可以是选项标志值之一。
lpBuffer
[out]指向接收选项设置的缓冲区的指针。由WinHttpQueryOption函数返回的字符串是全局分配的,所以调用应用程序在完成使用它时必须全局释放该字符串。将此参数设置为NULL会导致此函数返回FALSE。调用GetLastError然后返回ERROR_INSUFFICIENT_BUFFER,lpdwBufferLength包含保存所请求信息所需的字节数。
lpdwBufferLength
[in, out]指向无符号长整数变量的指针,其长度为lpBuffer(以字节为单位)。当函数返回时,变量接收放入lpBuffer的数据的长度。如果GetLastError返回ERROR_INSUFFICIENT_BUFFER,则此参数将接收保存所请求信息所需的字节数。
返回值
如果成功返回TRUE,否则返回FALSE。要获取特定的错误消息,请调用GetLastError.返回的错误代码有:
错误代码 |
描述 |
ERROR_WINHTTP_INCORRECT_HANDLE_STATE |
所请求的操作不能完成,因为提供的句柄不在正确的状态。 |
ERROR_WINHTTP_INCORRECT_HANDLE_TYPE |
提供的手柄类型对于此操作是不正确的。 |
ERROR_WINHTTP_INTERNAL_ERROR |
发生内部错误。 |
ERROR_WINHTTP_INVALID_OPTION |
指定了无效的选项值。 |
ERROR_NOT_ENOUGH_MEMORY |
没有足够的内存来完成请求的操作。(Windows错误代码) |
备注
即使在异步模式下使用WinHTTP(即,在WinHttpOpen中设置了WINHTTP_FLAG_ASYNC)时,此函数将同步运行。返回值表示成功或失败。要获取扩展错误信息,请调用GetLastError.
如果对指定的句柄类型无效的选项标志传递给dwOption参数,则GetLastError返回ERROR_INVALID_PARAMETER。