描述
WinHttpConnect函数指定HTTP请求的初始目标服务器,并向该初始目标的HTTP会话返回一个HINTERNET连接句柄。
C / C ++语法
HINTERNET WinHttpConnect( HINTERNET hSession, LPCWSTR pswzServerName, INTERNET_PORT nServerPort, DWORD dwReserved ); |
PowerBASIC 语法
FUNCTION WinHttpConnect ( _ BYVAL hSession AS DWORD, _ BYREF pswzServerName AS WSTRINGZ, _ BYVAL nServerPort AS WORD, _ BYVAL dwReserved AS DWORD _ ) AS LONG |
参数
hSession
[in]有效HINTERNET以前调用WinHttpOpen返回的WinHTTP会话句柄。
pswzServerName
[in]指向包含HTTP服务器主机名的以null结尾的Unicode字符串的指针。或者,字符串可以以ASCII格式包含站点的IP地址,例如10.0.1.45。
nServerPort
[in]无符号整数,指定连接到的服务器上的TCP / IP端口。这可以是任何有效的TCP / IP端口号或以下值之一:
INTERNET_DEFAULT_HTTP_PORT
使用HTTP服务器的默认端口(端口80)。
INTERNET_DEFAULT_HTTPS_PORT
使用HTTPS服务器的默认端口(端口443)。选择此端口不会自动建立安全连接。您仍然必须通过使用带有WinHttpOpenRequest的WINHTTP_FLAG_SECURE标志来指定安全事务语义的使用。
INTERNET_DEFAULT_PORT
使用端口80作为HTTP,端口443用于安全超文本传输??协议(HTTPS)。
dwReserved
[in]保留。必须为零。
返回值
如果连接成功,则返回HTTP会话的有效连接句柄,否则返回NULL。要检索扩展错误信息,请调用GetLastError.返回的错误代码有:
错误代码 |
描述 |
ERROR_WINHTTP_INCORRECT_HANDLE_TYPE |
提供的手柄类型对于此操作是不正确的。 |
ERROR_WINHTTP_INTERNAL_ERROR |
发生内部错误。 |
ERROR_WINHTTP_INVALID_URL |
网址无效 |
ERROR_WINHTTP_OPERATION_CANCELLED |
操作被取消,通常是因为在操作完成之前,请求的操作被关闭。 |
ERROR_WINHTTP_UNRECOGNIZED_SCHEME |
无法识别或不支持URL方案。 |
ERROR_WINHTTP_SHUTDOWN |
正在关闭或卸载WinHTTP功能支持。 |
ERROR_NOT_ENOUGH_MEMORY |
没有足够的内存来完成请求的操作。(Windows错误代码) |
备注
即使在异步模式下使用WinHTTP(即,当WinHttpOpen中设置了WINHTTP_FLAG_ASYNC时),此函数同步运行。返回值表示成功或失败。要获取扩展错误信息,请调用GetLastError.
调用应用程序使用WinHttpConnect返回的HINTERNET句柄后,必须使用WinHttpCloseHandle函数关闭。
WinHttpConnect指定目标HTTP服务器,但如果请求被重定向,则响应可能来自其他服务器。您可以通过使用WINHTTP_OPTION_URL标志调用WinHttpQueryOption来确定发送响应的服务器的URL。