📄 100.htm
字号:
<p>用Visual Basic轻松地设计Browser及Ftp程序</p>
<p></p>
<p>自从Internet盛行以来,人们对于文件下载、即时信息获取、电子邮件传送变得方便 </p>
<p>许多。 Internet可以说是21世纪人类科技的一大创新。由于这个重大改变,人们的生活 </p>
<p>方式也受到非常大的影响;电子购物、网上信息库、网上股市实时交易如雨后春笋般的出 </p>
<p>现。以往,Visual Basic 4.0并没有提供一个完整的solution供Visual Basic的爱好者设 </p>
<p>计Internet程序。 还好,Visual Basic 5.0 提供了一些控件,供我们设计Internet的相 </p>
<p>关程序。在本文中,笔者将会用 Internet Transfer control配合Web Browser control </p>
<p>,来告诉读者如何用Visual Basic 5.0轻松地设计Browser及FTP程序。 </p>
<p></p>
<p>Control简介 </p>
<p></p>
<p>Internet Transfer control </p>
<p></p>
<p>Internet Transfer control 是微软为方便使用者设计Internet应用程序所提供的一 </p>
<p>种control。它提供两种Internet protocol:HTTP及FTP。我们在使用时,必须先设置好 </p>
<p>它的存取方式。存取方式分为直接连接到Internet网络,或通过proxy来连接Internet网 </p>
<p>络两种,完全依我们的网络性质来定。当我们设置好了相关参数之后,Internet Transfe </p>
<p>r control提供两个method:OpenURL及Execute 来让我们执行网络相关操作,我们可以用 </p>
<p>这两个命令来执行一些Internet command。在下面的设计中,笔者会说明它的用法。 </p>
<p></p>
<p>Web Browser control </p>
<p></p>
<p>Web Browser control最早是由IE 3.0所提供,在安装IE 3.0时就会自动载入;Visua </p>
<p>l Basic 5.0 将它变成内部控件。它提供Navigate method,使我们能够连接到我们想要 </p>
<p>去的WWW Server。 </p>
<p></p>
<p>各位读者一定很奇怪:既然Internet Transfer control能够通过HTTP及TP protocol </p>
<p>连接到 Internet,我们还要Web Browser control干甚么?只因为Internet Transfer co </p>
<p>ntrol并没有提供图形模式的存取方式,所得到的文件仅能以文本模式传回。如果传回的 </p>
<p>文件包含图形的话,还必须将所得到的HTML文件用程序来做一个转换。所以笔者选择了We </p>
<p>b Browser control来帮我们做一个转换。 </p>
<p></p>
<p>以下就让笔者来告诉读者如何设计Web Browser及FTP client。 </p>
<p></p>
<p>Web Browser程序设计 </p>
<p></p>
<p>Step 1:设置好网络参数 </p>
<p></p>
<p>首先要知道我们的网络系统是直接连到Internet,还是通过proxy连接到Internet。 </p>
<p>我们可以通过以下的步骤来确定我们的系统是以哪种方式连接Internet: </p>
<p></p>
<p>在"我的电脑"选项double click进入"控制面板"。在"控制面板"选项中double click </p>
<p>进入"Internet" 选项。在Internet Dialog Box中选择connection。由屏幕显示的Dialog </p>
<p>Box就可以知道系统是通过proxy还是通过dialing的方式连接到Internet。由于笔者的系 </p>
<p>统是通过proxy连接到Internet,我们必须要找出proxy Server的address及port,以利于 </p>
<p>程序设置。 </p>
<p></p>
<p>接着click"setting"选项来查看它的address及port。屏幕接着会显示一个Dialog Bo </p>
<p>x,里面记着"address of proxy to use ": 172.18.16.65,"port" : 8080。将它记录下 </p>
<p>来,等会儿就会用到这些参数。 </p>
<p></p>
<p>Step 2:开始设计程序 </p>
<p></p>
<p>在File选项中选择New Project建立一个新的工程,在屏幕上会看到许多选项,如Act </p>
<p>iveX Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等,这时 </p>
<p>要选Standard.EXE。 </p>
<p></p>
<p>接着在Project下,选择Property属性选项,在general选项下将Project Name改为We </p>
<p>b browser。在屏幕的Form上加入一个Web browser control,取名为web1;接着加入一个 </p>
<p>Internet Transfer control,取名为Inet1。 </p>
<p></p>
<p>加入三个TextBox control,分别取名为CGISearch、webname和htmlshow,并在CGISe </p>
<p>arch TextBox前加入一个Label,将其Caption改为Search 。 </p>
<p></p>
<p>加入三个Button control,分别取名为Search、Go和ShowDoc。将Caption分别改为Se </p>
<p>arch、 Go to和show document 。 </p>
<p></p>
<p>为方便读者了解关系,以下以表格解释一遍: </p>
<p>(TextBox) </p>
<p>Name </p>
<p>------------------------------------------------- </p>
<p>CGISearch(输入CGI命令) </p>
<p>webname(输入要前往的web address) </p>
<p>htmlshow(显示html文字结果) </p>
<p></p>
<p>(Button) </p>
<p>Name Caption </p>
<p>--------------------------------------------------------------------------- </p>
<p>----- </p>
<p>Search(执行CGI命令) search </p>
<p>Go(执行前往web address的动作) Go to </p>
<p>ShowDoc(显示html文字结果) show document </p>
<p></p>
<p>接着将Inet1的各项属性设置如下: </p>
<p>Accesstype=2-icnamedproxy </p>
<p>protocol=4-icHTTP </p>
<p>proxy=172.18.16.65:8080 </p>
<p></p>
<p>在Go_Click()中加入以下程序代码, 这个动作是连接到所想要去的web Server,并 </p>
<p>将屏幕显示在web1的方块区域内: </p>
<p>Private Sub Go_Click() </p>
<p>web1.Navigate webname.Text </p>
<p>End Sub </p>
<p>以上程序是运用web1的Navigate,这个method将屏幕连接到web name TextBox中所指 </p>
<p>定的网络站点。 </p>
<p></p>
<p>在htmlshow _Click()加入以下的程序代码: </p>
<p>Private Sub htmlshow _Click() </p>
<p>a$ = web1.LocationURL </p>
<p>ShowDoc.Text = Inet1.OpenURL(a$) </p>
<p>End Sub </p>
<p></p>
<p>以上程序,是先将web1所连接到的URL address,通过LocationURL这个property读出 </p>
<p>,并将它暂存于字符串a。接着使用OpenURL()命令来将所接收到的HTML程序代码,显示在 </p>
<p>ShowDoc这个TextBox中。 </p>
<p></p>
<p>在CGIserch _Click()中加入以下程序代码: </p>
<p>Private Sub CGIserch _Click() </p>
<p>Web1.Navigate "http://search.yahoo.com/bin/Search ? p=" + CGI. </p>
<p>Text </p>
<p>End Sub </p>
<p>这个动作是用CGI命令来查询文件。在这里我们将查询命令指定传送到Yahoo 这个网 </p>
<p>络搜寻站。 </p>
<p></p>
<p>这样我们就完成了一个小型的Web Browser。 </p>
<p></p>
<p>Step 3:测试程序 </p>
<p>执行刚设计完的Web Browser,并在web name这个TextBox中填入所要去的网址。这里 </p>
<p>我们将它设置为http://www.Microsoft.com。接着按下Go Button,将会看到在web1 cont </p>
<p>rol的方块区域内显示了Microsoft的HomePage。 </p>
<p></p>
<p>按下ShowDoc Button,将可以在htmlshow这个TextBox中看到Microsoft HomePage的H </p>
<p>TML 程序代码。 </p>
<p></p>
<p>接下来让我们试试CGI搜寻功能。在CGIserch TextBox中加入communication,结果我 </p>
<p>们发觉查询的结果显示在web1方形区域中。 </p>
<p></p>
<p>同样的,我们也可以按下ShowDoc Button,将可以在htmlshow这个TextBox中,看到 </p>
<p>查询结果所传回的HTML程序代码。 </p>
<p>恭喜您成功了! </p>
<p></p>
<p>FTP程序设计 </p>
<p></p>
<p>前面提到Internet Transfer control可以提供FTP protocol,这里我们便要告诉您 </p>
<p>如何运用 Internet Transfer control来设计一个可以连接FTP Server的client程序,并 </p>
<p>将FTP Server上的bbb.txt文件download到local端。 </p>
<p></p>
<p>Step 1:程序设计 </p>
<p></p>
<p>在File选项中选择NewProject建立一个新的工程,在屏幕上看到许多选项,如Active </p>
<p>X Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等,这时要选 </p>
<p>Standard.EXE。接着在Project下,选择Property属性选项,在general选项下将Project </p>
<p>Name改为FTP client。 </p>
<p></p>
<p>在屏幕的Form上加入一个Internet Transfer control,取名为Inet1。将Inet1 prop </p>
<p>erty的参数设置如下: </p>
<p>Accesstype=2-icnamedproxy </p>
<p>Username="david" </p>
<p>password="2333334" </p>
<p>protocol=2-icFTP </p>
<p>proxy=172.18.16.65:8080 </p>
<p>我们在此将Username及password设置好,当我们Login进入FTP Server时,Server将 </p>
<p>会直接跳过输入Username和password的屏幕。 </p>
<p></p>
<p>加入一个TextBox control,取名为FTPgetfile。 加入两个Button control,取名为 </p>
<p>FTPget和FTPLink,分别将其Caption改为FTPget和 FTPLink。 </p>
<p></p>
<p>在FTPLink _Click()中加入以下程序代码: </p>
<p>Private Sub FTPLink _Click() </p>
<p>Inet1.excute "FTP 128.9.200.4" </p>
<p>End Sub </p>
<p>Execute是Internet Transfer control提供的一个用来执行FTP公用程序的method, </p>
<p>我们可以在它的后面加入FTP的命令,这样我们就可以使用任何熟悉的FTP公用程序来完成 </p>
<p>工作。 笔者的FTP Server地址是128.9.200.4,所以我们在FTP命令后面填入这个地址。 </p>
<p></p>
<p>接着在FTPget _Click()中加入以下程序代码: </p>
<p>Private Sub FTPLink _Click() </p>
<p>Inet1.excute "GET aaa.txt c:\bbb.txt" </p>
<p>End Sub </p>
<p>这个动作是将FTP Server上的aaa.txt文件传送到client端。 </p>
<p></p>
<p>Step 2:测试 </p>
<p></p>
<p>将FTPclient执行起来,按下FTPLink Button,连结到 FTP Server。按下FTPget But </p>
<p>ton,取回文件。有没有发觉到在C:\目录下面多了一个bbb.txt的文件?恭喜您成功了! </p>
<p></p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -