InternetOpenUrl 函数

 

InternetOpenUrl函数

通过一个完整的FTP,Gopher或HTTP网址打开一个资源。

HINTERNET InternetOpenUrl (__in HINTERNET hInternet
 ,__in LPCTSTR lpszUrl
 ,__in LPCTSTR lpszHeaders
 ,__in DWORD值dwHeadersLength
 ,__in的DWORD dwFlags
 ,__in DWORD_PTR dwContext
) ;
参数
hInternet

当前的 Internet 会话句柄。句柄必须由前期的 InternetOpen 调用返回。

lpszUrl

一 个空字符结束的字符串变量的指针,指定读取的网址。只有以ftp:, gopher:, http:, 或者 https: 开头的网址被支持。

lpszHeaders

一个空字符结束的字符串变量的指针,指定发送到HTTP服务器 的头信息。欲了解更多信息,请参阅HttpSendRequest 函 数里lpszHeaders 参数的说明。

dwHeadersLength

额外的头的大小,以TCHAR 为单位。如果这个参数是-1L并且lpszHeaders 不是NULLlpszHeaders 被 假设为零终止( ASCIIZ ),而长度被自动计算。

dwFlags

此参数 可为下列值之一。

数值说明

INTERNET_FLAG_EXISTING_CONNECT

如果使用相同的必须属性创建会话,会尝试利用现有的InternetConnect对象。这只对FTP操作非常有用,因为 FTP是唯一在同一会话中执行多种操作的协议。WinINet API 为每个由InternetOpen 产生的HINTERNET 句 柄缓冲一个单独链接句柄。InternetOpenUrl 使用此标志的HTTP和FTP连接。

INTERNET_FLAG_HYPERLINK

当 决定何时从网络重载时,如果服务器没有返回 Expires time 和 LastModified,那么强制重载。

INTERNET_FLAG_IGNORE_CERT_CN_INVALID

停用检查从服务器对必须的主机名称返回的SSL/PCT-based证书。 WinINet函数使用简单的比较匹配主机名称和通配符的规则检查证书。

INTERNET_FLAG_IGNORE_CERT_DATE_INVALID

停 用检查的SSL/PCT-based的证书的适当的有效日期。

INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP

禁用检测这中特殊的重定向。当使用此标志, WinINet 透明允许从HTTPS到HTTP URL的重定向。

INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS

禁用检测这中特殊的重定向。当使用此标志, WinINet 透明的允许的HTTP到HTTPS URL的重定向。

INTERNET_FLAG_KEEP_CONNECTION

如果可能的话,为连接使用保活语义。这个标志要求微软网络( MSN ),NTLM和其他类型的身份验证。

INTERNET_FLAG_NEED_FILE

如果要创建的文件不能被缓存,创建临时文件。

INTERNET_FLAG_NO_AUTH

不试图自 动验证。

INTERNET_FLAG_NO_AUTO_REDIRECT

不自动处理HttpSendRequest 中 的重定向。

INTERNET_FLAG_NO_CACHE_WRITE

不添加返回实体到缓存。

INTERNET_FLAG_NO_COOKIES

不会 自动添加的Cookie头到请求,并且不自动添加返回的cookie到cookie数据库。

INTERNET_FLAG_NO_UI

禁用 Cookie的对话框。

INTERNET_FLAG_PASSIVE

使用被动FTP语义。InternetOpenUrl 为FTP的文件和目录使用此标 志。

INTERNET_FLAG_PRAGMA_NOCACHE

即使代理中存在缓存副本,也强制要求由源服务器返回。

INTERNET_FLAG_RAW_DATA

检 索的Gopher目录信息时,传回的数据作为GOPHER_FIND_DATA 结 构,如果检索的FTP目录信息时,作为一个WIN32_FIND_DATA 结构。如果此标志没有指定,或者请求通过CERN代理创建, InternetOpenUrl 返 回的HTML版本的目录。

INTERNET_FLAG_RELOAD

从原服务器强制下载所要求的文件,对象,或目录列表,而不是从缓存下载。

INTERNET_FLAG_RESYNCHRONIZE

重新加载的HTTP资源,如果资源在最后一次下载后已被修改。所有FTP和Gopher资源将被重载。

INTERNET_FLAG_SECURE

使用安全传输语义。这次传输使用安全套字节层/专用通信技术(的SSL / PCT ),这只有在HTTP请求时有意义。

dwContext

一个 指向一个应用程序定义的值,将随着返回的句柄,一起传递给回调函数。

返回值

如果已成功建立 到FTP,Gopher,或HTTP URL的连接,返回一个有效的句柄,如果连接失败返回NULL。要检索特定的错误讯息,请GetLastError 。要确定为什么对服务器的访问被拒绝,请调用InternetGetLastResponseInfo

备注

先调用InternetCanonicalizeUrl , 如果正在使用的网址包含一个相对URL和一个空格分隔的基础URL。

这是一个通用的函数,可用于使用任何WinINet支持的协议检索数 据。这个函数在应用程序并不需要指定特定的协议,只需要相应的URL的数据时,特别有用。InternetOpenUrl 函数解析URL字 符串,建立连接到服务器,并准备下载的指定URL的数据。该应用程序可以用InternetReadFile (对文件)或InternetFindNextFile (对目录)来检索URL的数据。没有必要在InternetOpenUrl 前调用InternetConnect

InternetOpenUrl 在少于1024端口上禁用Gopher,除了70——标准的Gopher端口和105——通常用于 中央服务组织(民间组织)的名字搜索。

在使用完InternetOpenUrl 返回的HINTERNET 句 柄后,必须使用InternetCloseHandle 函 数关闭它。

注意 :当工作在异步模式( InternetOpen dwFlags 参 数指定INTERNET_FLAG_ASYNC)和 dwContext 参数是零 (INTERNET_NO_CALLBACK),使用 InternetSetStatusCallback 函 数设置的回调,将不被引用,但是,将仍然在异步模式执行回调。
要求

客户端

需要 Windows Vista, Windows XP, Windows 2000 Professional, Windows NT Workstation 4.0, Windows Me, Windows 98, 或者 Windows 95。

服务器-

需要 Windows Server 2008, Windows Server 2003, Windows 2000 Server, 或 Windows NT Server 4.0。

版 本:

需要 Internet Explorer 3.0 或更高版本。

在 Wininet.h 中声明。

使 用 Wininet.lib 。

DLL

需要 Wininet.dll 。

Unicode

执行InternetOpenUrlW (Unicode) 和InternetOpenUrlA (ANSI) 的。

参 见

处 理统一资源定位器
WinINet 函数


发 送有关此主题的注解到微软

建立日期: 2007年8月15号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值