说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

设计Browser及FTP程序 -VB资料

HTML文档下载 WORD文档下载 PDF文档下载
设计Browser及FTP程序 -VB资料
作者:张冠军

用VB 5.0 设计Browser及FTP程序

前言
  自从Internet盛行以来,人们对于文件下载、即时信息获取、电子邮件传送变得方便许多。 Internet可以说是21世纪人类科技的一大创新。由于这个重大改变,人们的生活方式也受到非常大的影响;电子购物、网上信息库、网上股市实时交易如雨后春笋般的出现。以往,Visual Basic 4.0并没有提供一个完整的solution供Visual Basic的爱好者设计Internet程序。 还好,Visual Basic 5.0提供了一些控件,供我们设计Internet的相关程序。在本文中,笔者将会用Internet Transfer control配合Web Browser control,来告诉读者如何用Visual Basic 5.0轻松地设计Browser及FTP程序。

Control简介
 Internet Transfer control
  Internet Transfer control 是微软为方便使用者设计Internet应用程序所提供的一种control。它提供两种Internet protocol:HTTP及FTP。我们在使用时,必须先设置好它的存取方式。存取方式分为直接连接到Internet网络,或通过proxy来连接Internet网络两种,完全依我们的网络性质来定。当我们设置好了相关参数之后,Internet Transfer control提供两个method:OpenURL及Execute 来让我们执行网络相关操作,我们可以用这两个命令来执行一些Internet command。在下面的设计中,笔者会说明它的用法。

 Web Browser control
  Web Browser control最早是由IE 3.0所提供,在安装IE 3.0时就会自动载入;Visual Basic 5.0 将它变成内部控件。它提供Navigate method,使我们能够连接到我们想要去的WWW Server。

  各位读者一定很奇怪:既然Internet Transfer control能够通过HTTP及TP protocol连接到 Internet,我们还要Web Browser control干甚么?只因为Internet Transfer control并没有提供图形模式的存取方式,所得到的文件仅能以文本模式传回。如果传回的文件包含图形的话,还必须将所得到的HTML文件用程序来做一个转换。所以笔者选择了Web Browser control来帮我们做一个转换。
  以下就让笔者来告诉读者如何设计Web Browser及FTP client。

Web Browser程序设计

Step 1:设置好网络参数
  首先要知道我们的网络系统是直接连到Internet,还是通过proxy连接到Internet。我们可以通过以下的步骤来确定我们的系统是以哪种方式连接Internet:在"我的电脑"选项double click进入"控制面板"。在"控制面板"选项中double click进入"Internet" 选项。在Internet Dialog Box中选择connection。由屏幕显示的Dialog Box就可以知道系统是通过proxy还是通过dialing的方式连接到Internet。由于笔者的系统是通过proxy连接到Internet,我们必须要找出proxy Server的address及port,以利于程序设置。
  接着click"setting"选项来查看它的address及port。屏幕接着会显示一个Dialog Box,里面记着"address of proxy to use ": 172.18.16.65,"port" : 8080。将它记录下来,等会儿就会用到这些参数。

Step 2:开始设计程序
  在File选项中选择New Project建立一个新的工程,在屏幕上会看到许多选项,如ActiveX Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等,这时要选Standard.EXE。
  接着在Project下,选择Property属性选项,在general选项下将Project Name改为Webbrowser。在屏幕的Form上加入一个Web browser control,取名为web1;接着加入一个Internet Transfer control,取名为Inet1。加入三个TextBox control,分别取名为CGISearch、webname和htmlshow,并在CGISearch TextBox前加入一个Label,将其Caption改为Search。加入三个Button control,分别取名为Search、Go和ShowDoc。将Caption分别改为Search、Go to和show document。

为方便读者了解关系,以下以表格解释一遍:
(TextBox)
Name
-------------------------------------------------
CGISearch(输入CGI命令)
webname(输入要前往的web address)
htmlshow(显示html文字结果)

(Button)
Name Caption
-------------------------------------------------
Search(执行CGI命令) search
Go(执行前往web address的动作) Go to
ShowDoc(显示html文字结果) show document

  接着将Inet1的各项属性设置如下:
Accesstype=2-icnamedproxy
protocol=4-icHTTP
proxy=172.18.16.65:8080

  在Go_Click()中加入以下程序代码, 这个动作是连接到所想要去的web Server,并将屏幕显示在web1的方块区域内:
Private Sub Go_Click()
web1.Navigate webname.Text
End Sub
  以上程序是运用web1的Navigate,这个method将屏幕连接到web name TextBox中所指定的网络站点。

  在htmlshow _Click()加入以下的程序代码:
Private Sub htmlshow _Click()
a$ = web1.LocationURL
ShowDoc.Text = Inet1.OpenURL(a$)
End Sub
  以上程序,是先将web1所连接到的URL address,通过LocationURL这个property读出,并将它暂存于字符串a。接着使用OpenURL()命令来将所接收到的HTML程序代码,显示在ShowDoc这个TextBox中。

  在CGIserch _Click()中加入以下程序代码:
Private Sub CGIserch _Click()
Web1.Navigate "http://search.yahoo.com/bin/Search ? p=" + CGI.Text
End Sub
  这个动作是用CGI命令来查询文件。在这里我们将查询命令指定传送到Yahoo 这个网络搜寻站。这样我们就完成了一个小型的Web Browser。

Step 3:测试程序
  执行刚设计完的Web Browser,并在web name这个TextBox中填入所要去的网址。这里我们将它设置为http://www.Microsoft.com。接着按下Go Button,将会看到在web1 control的方块区域内显示了Microsoft的HomePage。按下ShowDoc Button,将可以在htmlshow这个TextBox中看到Microsoft HomePage的HTML程序代码。
  接下来让我们试试CGI搜寻功能。在CGIserch TextBox中加入communication,结果我们发觉查询的结果显示在web1方形区域中。同样的,我们也可以按下ShowDoc Button,将可以在htmlshow这个TextBox中,看到查询结果所传回的HTML程序代码。
  恭喜您成功了!
============================================

FTP程序设计
  前面提到Internet Transfer control可以提供FTP protocol,这里我们便要告诉您如何运用 Internet Transfer control来设计一个可以连接FTP Server的client程序,并将FTP Server上的bbb.txt文件download到local端。

Step 1:程序设计
  在File选项中选择NewProject建立一个新的工程,在屏幕上看到许多选项,如ActiveX Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等,这时要选Standard.EXE。接着在Project下,选择Property属性选项,在general选项下将Project Name改为FTP client。
  屏幕的Form上加入一个Internet Transfer control,取名为Inet1。将Inet1 property的参数设置如下:
Accesstype=2-icnamedproxy
Username="david"
password="2333334"
protocol=2-icFTP
proxy=172.18.16.65:8080

  我们在此将Username及password设置好,当我们Login进入FTP Server时,Server将会直接跳过输入Username和password的屏幕。加入一个TextBox control,取名为FTPgetfile。加入两个Button control,取名为FTPget和FTPLink,分别将其Caption改为FTPget和 FTPLink。

  在FTPLink _Click()中加入以下程序代码:
Private Sub FTPLink _Click()
Inet1.excute "FTP 128.9.200.4"
End Sub
 Execute是Internet Transfer control提供的一个用来执行FTP公用程序的method,我们可以在它的后面加入FTP的命令,这样我们就可以使用任何熟悉的FTP公用程序来完成工作。
  笔者的FTP Server地址是128.9.200.4,所以我们在FTP命令后面填入这个地址。

  接着在FTPget _Click()中加入以下程序代码:
Private Sub FTPLink _Click()
Inet1.excute "GET aaa.txt c:\bbb.txt"
End Sub
  这个动作是将FTP Server上的aaa.txt文件传送到client端。

Step 2:测试
  将FTPclient执行起来,按下FTPLink Button,连结到 FTP Server。按下FTPget Button,取回文件。有没有发觉到在C:\目录下面多了一个bbb.txt的文件?恭喜您成功了!
动态组成SQL速句-Delphi资料 多层C/S的客户端调用服务器端的方法-Delphi资料 关于dephi数据库的动态建立-Delphi资料 基 于WEB 的 数 据 库 查 询-Delphi资料 计算数据库某字段的值-Delphi资料 计算字段值-Delphi资料 建立应用软件注册安全机制-Delphi资料 建立自己的数据字典库-Delphi资料 将BLOB字段的BMP图显示出来-Delphi资料 将图像放入数据库中-Delphi资料 解 决sybase 用 户 数 据 库 不 能 进 入 故 障 的 一 种 方 法-Delphi资 解决sybase用户数据库不能进入故障的一种方法-Delphi资料 解决一个DBF表时的"Index not found.."错误-Delphi资料 精简Delphi数据库应用系统 精简Delphi数据库应用系统-定制BDE驱动程序 精简数据库应用系统-Delphi资料 开 发 基 于ORACLE7 数 据 库 的 管 理 信 息 系 统-Delphi资料 开 发AS/400 应 用 系 统: PB5 与Delphi3 的 比 较 利 用Delphi 开 发 响 应 用 户 输 入 的 数 据 库 查 询Web Server 程 利用Delphi开发响应用户输入的数据库查询Web Server程序 利用Tbatch组件完成数据批处理-Delphi资料 如 何 恢 复Sybase SQL Anywhere 的 数 据 库-Delphi资料 如何捕捉KEY VIOLATION等错误-Delphi资料 如何得到SQL返回的计算结果-Delphi资料 如何动态的读取Delphi中的PopupMenu的Caption ? 如何动态设置DBGRID。比如,动态设置DBGRID的COLUMNS。及如何在数值数据格式成千分位 如何返回BDE的状态信息?-Delphi资料 如何控制关键字段的重复输入及报错-Delphi资料 如何设置Microsoft SQL Server 全文索引服务 ?-Delphi资料 如何设置多用户环境的PARADOX数据库-Delphi资料 如何实现在一个Dbgrid中显示多数据库-Delphi资料 请教 救命啊!2k中了W32.HLLW.Lovgate.G@mm病毒啦 如何使用asp。net? 我怎么在一个页面里做了操作后,同时打开的另一个窗口也同时就这个操作的影响 如何,用jndi连接oracle数据库呢?? 如何访问其他进程的内存? 38部《真实自拍影片》,精彩! 中秋节 散分贴三连发 第二贴 寻找压缩控件! 一个简单的SQL语句! 關於框架 请版主帮忙(怎样将asp中的动态数据填充到有一定格式的EXCEL模板文件中) 一个简单的问题,急! 为大家吐血献上:余世维《成功人士讲座》录像 Tomact设置问题 很简单的“异常”问题 linux vi的绝对路径是什么? 为我即将离开PB和IT行业,散分! 今天是中秋节,还是单身的水友进来坐坐。 哪有Crysrept下载?? Session为什么掉了??急切等待!!! struts中一个页面如何显示多个FormBean? 过节了,散分,祝大家中秋快乐!!!!!! 請問TForm中相當於MFC中OnIdle()的event是什麼 数据库问题,急!!急!急!急!急! CISCO2600的ISDN拔号不会自动断线,怎么办? 谁知道怎么验证一个用户名和一个密码是不是在WINDOWS2000中添加过的?而且正确? 。。。谁能给我发一个“智能狂拼2”的下载连接地址 请求--网页评比规则? 在visual.net上无法调试存储过程。急。求救 asp加密程序 我用SQL server+DElphi中的ADO做数据应用程序,数据库备份后,怎样实现数据库的恢复? 贴子太多了,看不过来了,大力liuri出来讲讲 sqlserver 用 jdbc出错 ,Microsoft][SQLServer 2000 Driver for JDBC]Error setting up static cursor cache 如何在C#中用代码控制本地FTP服务打开和关闭?99分,中秋快乐. 关于dll的问题,在线求教 昨晚,我抱了我MM一下!开心呀!散分! 有什么软件可以使上网不受防火墙的限制? 一个C的图形函数,请问怎样用的? 数据库查询语句执行错误 web页面的activex控件怎么调用服务器上的动态连接库?? 中秋散分 【泰坦】祝大家中秋节快乐!(1) 纯jsp聊天室的页面刷新问题 这个MSDN是不是常说的那个MSDN资料库? 一句sql语句问题 【泰坦】祝大家中秋节快乐!(2) 我的触发器为什么没有响应啊。在线等啊 pb9.0+sql server 2000,怎样制作程序发布? pb给dll传递结构数组的问题。急!!! pb9.0+sql server 2000,怎样制作程序发布? 教教我写一篇关于祖母生日的英语作文内容要点:1、祖母生日.2、买礼物.3、乘车去祖母家.4、见面.5、送生日礼物.6、准备午餐.7、午餐.8、告别.大家快点帮我想办法阿. 上面一个 日 下面一个 戌怎么读 有谁能帮我用matlab解微分方程啊,方程如下:初始值dx=0.4,dy=0.1,dz=pi/4dx=-x+0.5*(z+y)(z+y+sinz);dy=-0.5*x*(z+y+sinz)+sinz;dz=-0.5*(y+z+sinz); 斯大林模式的作用是什么 matlab,解微分方程,[k,y]=dsolve('Dy=k*(y-28)','Dk=0','y(0)=30.8','y(60)=29.1','t');k=simple(k)y=simple(y)[k,y]=dsolve('Dy=k*(y-28)','Dk=0','y(0)=30.8','y(60)=29.1','t');|Error:Missing variable or function. 医道特别小的初一下学期的英语题求帮助 《初冬月夜》的中心思想是什么? 医学上的小A是什么?大A是肾上腺素.出自《OnCall36小时》如题 谢谢了 人的一生究竟要承载多少压力啊? 赢得他人尊重的前提是什么 《故乡情》阅读题“故乡的风、故乡的云、故乡的树、故乡的月、故乡的小路,它们是一组凝固了的水彩画,紧紧嵌在我心里.”把这句话改写成“像……一样……”的句式,并思考体会“嵌”字 巴黎CAC40股指4日报收于4288伦敦股市4日上涨美国9月份工厂订货环比上升1.7%聚焦养老保险体系:自愿性的企业年金比明星照被恶搞:杨幂鼻孔变插孔 赵本山中国全国政协副主席王正伟访问印度《旅游法》洗牌旅游业 “不许购物”是十八届三中全会前瞻:国企分类改革与监奢华政府楼盘点:花40亿建世界第二大房地产调控:未撼动房价却推高离婚率房子改变社会生态:大城市还能容下“穷台风“麦德姆”逼近 浙江32座大中型2014希望工程圆梦行动正式启动内蒙古西部部分牧区过百天无降水旱情严海南重灾区群众有“三盼”19个援疆省份累计投入5亿元援助新疆广东省将对形象工程政绩工程“打假”朝鲜呼吁韩国不要放弃改善北南关系的机宿舍没空调大学生自习室里铺凉席撑蚊帐31省份5000余“诗词达人”PK出江苏三市6月空气质量再入全国“黑榜”持续高温致江苏用电缺口增大 机关宾馆悠悠笑把江湖搂双面人的恋爱曲夺塔魔兽去穿越等你到2048重生和珅之不走寻常路魔兽怪物大召唤毕业一夏代号:装甲核心器灵师神兵秘籍开发商大剑之深渊欢乐干线旅游西昌大通门旅游东风航天城旅游泰山北麓旅游碧桂园凤凰温泉旅游来古冰川旅游帕隆藏布江旅游喊泉旅游崖上人家旅游中山堂旅游鸡笼山旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘