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

设计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的文件?恭喜您成功了!
Google Play Game不够开放,被OpenKit炮轰 Google Play Game Service详解 不仅提供API更提供后端支持 IBM Power走向Linux,是必然的! 美国国家安全局解密特工培训手册:如何利用谷歌等大众搜索工具搜集保密数据 微软IE10如何保护上网安全(大图) 谷歌无畏苹果的理由:强力的算法和基础设施架构 开发者热议异构统一内存访问技术(hUMA) 千万级并发实现的秘密:内核不是解决方案,而是问题所在! Apache RewriteRule重写规则语法入门 IDC:2013 Q1 Android和iOS出货量占92% WP首超黑莓 传雅虎欲10亿美元收购轻博客网站Tumblr A Beautiful Mess:如何赚男人女人的钱 CSS、JavaScript开发者必备的10款最佳工具 IBM推出API管理平台 抢占API经济市场份额 2013中国云计算榜单之一:15云平台,谁主沉浮? 移动周报:百万壁纸、85后程序媛,我为梦想代言! 电信天翼开放平台:为App开发者免费提供云存储和云主机服务 Google新的Web UI库:Ploymer 研发周报:让开发者高效编程的10个新框架 拯救行将就木的PHP:谷歌为GAE添加PHP支持 PPT集萃(一):10位业内高管分享云计算技术理念与行业趋势 得益于苹果谷歌,未来可穿戴技术市场规模可达500亿美元 雅虎11亿美元押注Tumblr三大因素:用户、社交、内容 Perceptual:英特尔感知计算挑战赛 正式启动 吴义坚:创业去!我用深度神经网络,处理语音识别 浅谈用户体验的“反面模式 可穿戴设备又一站:增强现实眼镜CastAR 数字医疗投资将破纪录 投资人看好这些细分领域 Mayer又下一城:雅虎收购Tumblr推进移动化? 前端开发利器:代码预处理工具Prepros 一个轻量级的JavaScript库:Reactor.js MYSQL如何实现自动删除数据库中的记录 紧急提问:CB中那些类用.操作符 请问一个概念的问题:??????????????????????? 如何生成报表文件啊? 装了oracle8i以后怎么登陆不了? 如何按照记录号转到指定的记录?不用SQL 用过magicskin的请进。 无法于数据库建立信任连接的问题_高分有送! 偶这个星期到深圳去,不知道在深圳有那些途径可以找到工作的? 手机掉到马桶里你会怎么办? 各位前辈帮忙看一下这个语句怎么解决(这是一个关于SQL语句的问题) 请教 java 命令的用法 用session跟踪用户的问题。 Xml中查找最大值! 请PHP高手推荐几本高阶的PHP书籍 偶这个星期到深圳去,不知道在深圳有那些途径可以找到工作的? Unicode问题 str:=#0+'9'+#0+'5'+#0+'8'+'~'+#207+'m'+'N' 在线等待。。 定位文件指针? 如何用ADO动态建SQL数据库 哪有 《Visual C++ 实践与提高——COM和COM+篇》下载 iis 为啥总出现 "the special module not found" 学习powerbuilder8.0 看哪些书比较好? 200相送,问题简单 一个使用用户空间控制流程的问题,望各位帮忙解答,小弟感谢不尽,在线等待 iis 为啥总出现 "the special module not found"(补充) 菜鸟问题---applet中的Runable方法, 紧急求助 装机:双敏的UKT400N主板性能怎么样?有啥缺点?适合超频吗? 请问vc编制数据库问题:如何读写binary字段 Chinajiji,看过来!多谢惠寄ISO/IEC 14882 请教各位高手用replace函数替换字符串时如何将颜色也变掉 SQL7.0备份的数据库如何在SQL2K中恢复? 如何改变编译出来的.exe文件的名称 谁有这样的矢量图设计系统例程可以参考参考? 谁有AVL树的代码呀。大家来讨论AVL树呀。呵呵 Maya 新手 哪位大侠能提供矢量图设计的例程! 请高人指点这个题目该怎么解决? 打包打包~~~~~什么是打包?? 多文件上传,一个很奇怪的现象! revalidate();怎样用? 怎樣得到系統的所有根目錄(如 C:,D:,E:),及根目錄下的所有子目錄. 求将excel文件导入notes数据库的方法(最好有例子),分不够可以再给! 小弟欲购编程器,各位大侠给点意见,大分相送,绝不亏待! 100分求教 如何访问远程数据库???? 怎么样才能取消上网自动填入密码 有没有了解“串口-TCPIP通信”的高手,请介绍一下 怎么把Socket设置为非阻塞状态的 关于窗口间刷新的问题 AT89C51属不属于MCS-51系列? 在Rt△ABC中,∠C=90°,AC=5,BC=12,○O的半径为3(1)当圆心O与点C重合时,○O与AB的位置关系怎么样谢 susan打算去西安旅游用英语怎么说 苟非吾之所有,虽一毫而莫取 三角形+三角形+三角形—圆形—圆形=75 圆形+圆形+圆形—三角形—三角形=5 三角形=?圆形=? 旋光度与什么有关 把树木的年轮看成是圆形的,如果一棵20年树龄的红衫树的树干直径是23cm,这颗红衫树的半径平均每年增加多少? 在Rt△ABC中,∠C=90°,AC=5,BC=12,○O的半径为3(1)当圆心O与点C重合时,○O与AB的位置关系怎么样拜 Betty的英语比Susan好用英语怎么说 如果一棵20年树龄的红杉树的树干直径是23cm,这棵红杉树的半径平均每年增加多少?说明理由 已知三角形与圆形的重合部分占三角形面积的5分之1,占圆面积的9分之2求三角形与圆的面积比.热求 快 为什么会有旋光度?书上只说是由于分子的构型不同,但是为什么构型不同会有左旋和右旋之分?为什么自然界中的只有右旋的葡萄糖和左旋的氨基酸?这是由什么决定的?莫非只有有神论才能解 回忆自己的读书感受,联系具体实例,说说自己从书籍中感受到哪些人类灵魂中的美丽 My parents are b____English teachers 希望susan去了西安后给我们带来照片用英语怎么说 在求节水文章开头,不要写的太深也不要太浮浅, 翻译 地震使整个城市成为一片废墟.(用in ruin) Susan经常跟经理一起去开会并做记录用英语怎么说 “且夫天地之间,物各有主,苟非吾之所有,虽一毫而莫取, 英语翻译十万火急!一小时内... 比旋光度公式 怎样在word里面写公式用WORD写得 小学一年级88页节约用水的作文怎么写 辛亥革命征文比赛 800字 请你为新华小学2009年入学的新生编学号.这个编号要反映出学校校名、入学年份、班级和该省的性别及在班里的序号.2009年新入学的学生共84人,编为3个班.每班28名学生.一班有男生15人,女生13 抗旱节水作文 500字 “几乎一片废墟”用英语怎么说? 写设计封面的时候是先写学号名字,还是先学年级班级?- -已经写好题目了~ 求初二升旗手自我介绍(第一人称)200字本人无特长,无职务,无爱好,不乐观,不爱读书学习,成绩中等闲人免答,跪谢! 玉树地震发生后,许多人被困在废墟下面.翻译成英语怎么说. 设x1,x2是方程x的二次方+6x+5=0的两个根,则x1,x2的等比中项为多少 苏轼:苟非吾之所有,虽一毫而莫取 说明了什么哲理吗? 自己丰富才能感知世界的丰富,自己善良才能感知世界的美好,自己坦荡才能逍遥地生活 解释画横线词语意思 除了石英砂以外 还有什么矿物可以用于铸造呢? 英语翻译谢谢聪明的人帮我翻译下,不要啰嗦的, 一些学校使用的学生卡能反映出很多信息,如2005 01 23表示“2005年入学的1班的学号为23号的同学”.你认为学生卡还可以怎样设计?你能设计一张含有更多信息的学生卡吗? when is your parents birthday?这里is 为啥不变are 【歪批译吧】自己丰富才能感知世界的丰富英文 请你为自己编个学号,该学号必须体现学校、年级、班级、座号等信息.我是福建省三明市梅列区列西小学的,第28号 写辛亥革命的作文,有哪些 通过函数提取将学号转变为班级学号的3、4位代表班级,01代表1班,02代表2班,03代表3班,怎么用函数来提取并转换成文字呢? 图①,在△ABC和△ADE中AB=AC,AD=AE,LBAC=LDAE,且点B,A,D在一条直线,连接BE,CD,M,N分别为BE,CD中点.(1)求证BE=CD(2)求证△AMN是等腰三角形(3)在图①基础上将△ADE绕点A顺时针转,使点D落在线段AB上其 珍爱生命,安全出行 林老师骑自行车从甲地到乙地,第一小时行了全程的3分之1,第二小时行了全程4分之1这时离哋还有20km甲、乙两地相距多少千米? 在三角形ABC和ADE中,AB=AC,AD=AE,LBAC=LDAE=a,求:LAOE=? 珍爱生命安全出行的名言 8、某班48位同学参加一次跳绳测验,在规定时间里,最多的跳了175次,最少的跳了160次.那么,在该班中至少 多么质朴无华的车骑!可是它却装载了人类灵魂中全部的美丽! 填空:Every week he helps me _____(learn) math.quickly~ 东周的都城是? 在“情系玉树”的捐款活动中,五年级同学平均每位捐款12.5元,五年级有5个班,每班有48位同学. 东周君主实际控制的土地在哪里? 初三几何圆与三角形AD是ΔABC的角平分线,以D为圆心,AD为半径作⊙D交AB于E,交AC于F,AD=AE=2,BE=1,求AC的长 “大街小巷有大量的垃圾,严重破坏了城市的美貌”用英语怎么说? 多么质朴无华的车骑!可是他却装载了人类灵魂中全部的美丽!的意思! 问三角形是多少,圆形是多少 英语翻译有一个城市发生了地震 这句话用英语怎么说?最好用上happen 文言文中“苟非吾之所有”中的“之”是什么意思 三角形的个数是圆形的4分之5三角行有多少个? 地震切断了这个城市与外界的联系用英语怎么表达? 为什么说书是人类进步的阶梯? 西湖申遗成功两年多 调研发现景区交通日本未从日俄会谈获实质成果 牵制中国英国男子患怪病 身体变形困家中韩俄峰会拟发涉朝声明俄强化防范“黑寡妇”袭击韩国防长承诺整顿网军国资委:地方国企效益下滑 一些地方仍美妇人送儿子手机前“约法18章” 网六大问题威胁食品安全 可追溯体系不完罗德曼“推销”朝鲜篮球队为朝鲜筹钱英15岁少年欲滑雪闯南极古巴关停“娱乐吧”美澳联手监听亚太法国两记者命丧马里俄罗斯严防“黑寡妇”袭击 确保冬奥会德国政府代表批评日本:对东亚紧张局势日本未从日俄会谈获实质成果 牵制中国教育经费管理存在多项问题 回应质疑制日本未从日俄会谈获实质成果 牵制中国多地汽车限行 分析称重污染后实行不会德国政府代表批评日本:对东亚紧张局势7月22日 | 2分钟京城事儿全知道交警叔叔真幽默,这样给车主的15个提北京藏着6个异国他乡,风景奇丽首次解密“信仰社交”,你会比Darr未来你的生活将要发生五大改变!电商人必须关注,阿里3号人物解析阿里南北贯穿的17号线,半数换乘站!方便30张PPT透视00后的移动互联网生对照一下孩子身高体重正常吗?超重过轻历史上最强大的特务机构:明朝锦衣卫重磅:北京这些产业需减、改、关废旧木头回收利用,超有创意的哦!总有些事,管你愿不愿意,它都要发生,请低配你的人生教你一眼区分南方人和北方人!太明显了不是世界不好,而是你见得太少七言 | 情人节我不怕一个人过,我只网传携程有意承包经营希腊小岛,布局地强烈推荐|各领域最顶尖的 10 个微城央高空Party,城里人就这么懂玩10个数字看2014年O2O的十大变
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘