利用VB访问Internet

2018-06-17 17:14:45来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

当前,有许多构造模块可以帮助用户创建名为超客户端(richclient)的Internet应用,其中包括VisualBasic(以下简称VB)的ActiveX控件集合。它们可以提供SMTP和POP邮件服务、FTP、Newsgroup和Web访问等功能。另外,利用OLE也可以实现Web访问的自动化。本文向大家介绍这两种方法。

在应用中嵌入ActiveX控件


利用Crescent的InternetToolpak(Internet工具包)符合HTTP协议的控件,可以将VB应用连接到Web站点,向站点传送数据,并从站点获取HTML页面。CrescentHTTP控件不能实际显示出下载的HTML页面,但能使应用程序以字符串的形式使用页面数据。例如,如果服务器产生一个名叫Myresult.html的HTML文件答复来自客户端的请求,客户端应用能够通过与服务器建立的CrescentActiveX连接来获取并下载这个文件。建立连接的代码段如下:

CIHTTP1.HostName="myresult.myhost.com"CIHTTP1.URL="results\myresult.html"CIHTTP.ParseIncomingData=TrueCIHTTP1.ConnectToServer一旦ActiveX控件与服务器建立连接,它就会触发HTTPServerConnection事件。这时,应用程序发出命令CIHTTP1.GET,检索URL属性中指定的页面,然后该控件激活FileClosed事件取回指定的页面。应用程序通过ActiveX的属性HTMLPageTextWithTags(主页不嵌有HTML代码时用属性HTMLPageTextWithOutTags)读页面文本。代码如下:

mytext=CIHTTP1.HTMLPageTextWithTags如果不想用控件下载整个主页,可以通过控件的PacketReceived事件的Packet参数快速扫描页面数据。每当控件接受到服务器的数据后都会激活PacketReceived事件。

另外,客户端应用还可以使用HTTP控件提取来自标准浏览器的Web页面数据。例如,ActiveX控件在幕后与Web建立连接并下载正在发布的页面,让传统的客户端应用不断接收最新Web信息,更改原有内容。

为进一步简化处理,在ActiveX控件与Web页面相连之前需设置好属性。Crescent的HTTP控件还可以把下载页面的URL地址、图像文件的地址和所有HTML命令文件分别添加到指定的三个列表框中。

用OLE实现Web访问的自动化


除了ActiveX控件以外,还有一种方法可以实现应用程序与Web的交互自动化,这就是OLE自动化,即利用OLEAutomation建立传统应用,再通过浏览器的OLEAutomation服务器接口进行自动Web连接。NetscapeNavigator和MicrosoftInternetExplorer3.0以上版本都支持OLEAutomation。

NetscapeNavigator的OLEAutomation接口是专为这一目的而设计的。例如,通过OLEAutomation接口让Navigator打开一个Web页面,它不会在自身的浏览器窗口中显示这个页面,而是下载该页面的内容,复制到服务器对象的数据缓冲区中,让客户端的应用程序去访问这些内容。

例如,假设需要Navigator在Excel中打开一个Web页面,首先必须使用Excel的"引用"对话框引用Navigator程序目录中的Netscape.TLB库,然后把Navigator对象作为一个实例,并完成打开页面的功能。代码如下:

DimNavasObject,resultasBooleanDimurl$ConsturlGet=0ConsturlPost=1url$=http://www.microsoft.com/indev/default.htmsetNav=CreatObject("netscape.network")result=Nav.Open(url$,urlGet,",",0,"")如果自动化对象的属性IsFinished设置为True,就可以通过对象缓冲区仔细处理页面中的内容。->

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:SQL的基本操作(3.表的相关操作)

下一篇:VisualBasic让一个Form出现在另一个非MDIForm的Form中