Internet程序设计
在计算机文化基础课程中讲述过Internet的产生,发展过程,基本原理和主要功能.Internet上的一种主流应用模式就是浏览器/服务器(Browser/Server).
VB中提供了用于Internet程序设计的控件,常用的控件有Internet Transfer控件,Web Browser控件,WinSock控件,MAPISession控件和MAPIMessages控件等.
VB还提供了一个编写HTML页面的脚本语言VBScript,它是VB的一个子集.在HTML中嵌入VBScript代码可以完成很多仅用HTML完成不了的功能.
11.1 Internet Transfer控件
11.1.1 Internet Transfer控件的基本概念
选择协议
Internet Transfer控件实现了两个广泛应用的协议:超文本传输协议HTTP和文件传输协议FTP.用Internet Transfer控件,可以连接到使用这些协议的任何地方.使用Internet Transfer控件首先必须确定要选用的协议.
主要用途
用Internet Transfer控件可以完成以下几项任务:在应用程序中添加FTP浏览器;创建自动从公共FTP站点下载文件的应用程序;分析WWW站点中的图形参考,并只下载图形;提供自定义格式显示从Web站点获得的动态数据.
在工程中添加控件
用鼠标右键单击工具箱空白处,在弹出菜单中选"部件"菜单项,在选择部件窗口中选中该控件的ActiveX文件,如图11-1所示.
图11-1 在工程中添加Internet Transfer控件
基本操作
(1)将AccessType属性设置为合法的代理服务器.
(2)用合法的URL调用OpenURL方法.
(3)用合法的URL和协议支持的命令调用Execute方法.
(4)用GetChunk方法从缓冲区获取数据.
11.1.2 Internet Transfer控件的主要属性
接入方式AccessType属性
该属性用于设置控件采用的连接类型,是必须设置的属性.它的设置依赖于接入Internet的方式.设置AccessType属性的方法如下:
(1)如果在一个局域网(或者Intranet)内,可以通过一个代理服务器接入Internet,这时,将AccessType属性设为2-icNamedProxy.并把Proxy属性设置为代理服务器的名字或IP地址.
(2)如果是通过电话线或ISDN专线等方式接入Internet,则将AccessType属性设为1-icDirect.
(3)如果不能确定接入Internet的方式,但又可以使用浏览器浏览网页或使用其他的FTP软件下载文件,那么,将AccessType属性设为0-icUseDefault,使用注册表中缺省的连接方式.
控件忙StillExecuting属性
该属性描述Internet Transfer控件是否正在执行一项任务.属性值为True时,表示控件忙,例如正在下载或上载文件,属性值为False时,表示控件闲.该属性是一个只读属性,只能在运行时取得其值.
统一资源定位器URL属性
统一资源定位器URL(Uniform Resource Locator)唯一地确定一个Internet站点地址.该属性设置和返回Execute方法或OpenURL方法中要用到的URL.该属性中至少应该包含一个协议名称和计算机的名称,还可以包含目录和文件名.例如:
Inet1.URL = "http://www.cctv.com"
可以用Execute方法或OpenURL方法来改变URL属性的值,如果不调用这两个方法中的任何一个,改变URL属性的值并不能带来实质性的动作.
文档名Document属性
Document是一个文件名或一个文档名,这个文件或文档用于存储下载或上载的文件内容.如果Document属性没有设置,下载或上载的内容自动存储在与服务器上相应文件名相同的文件中.若Document属性的内容为空,且要下载的文档名为"http://www.cctv.com/abc.txt",则下载到本地计算机后,文档名就是abc.Txt.
用户名UserName属性和用户口令Password属性
如果要访问一个设置了口令保护的服务器,必须设置UserName属性和Password属性.如果要访问一个FTP服务器,且UserName属性和Password属性没有设置,那么,系统一般把UserName属性设为"anonymous","Password属性设为E-mail地址.
请求超时Requesttimeout属性
该属性设置连接服务器可以花费的最长时间.如果连接超过了这个时间,但却没有连通服