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

设计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的文件?恭喜您成功了!
挖坟三星“眼球追踪技术”背后的技术团队 为什么开发者热衷在Stack Overflow上查阅API文档? Facebook推新News Feed 欲造就“个性化报纸” 女神程序员的一天:暴力测试social爬虫代码 2013IBM云存储路线图:更快,更简单,更安全 二战大数据故事:数学家、物理学家、概率论击败德国潜艇 软件定义网络服务商Pertino B轮融资2000万 Scringo社交组件,让你的应用“热闹”起来! Android开发必备:Eclipse 4.2 SR2版本发布 32场!2013年360HTML5校园行首站告捷 移动周报:不做内容,只钻技术的快播 一周消息树:中国开源发展缓慢的“病因” 百度应用引擎BAE正式开放 新增支持Node.js CloudVelocity,下一个VMware? Buffer创始人谈开发:先验证,后编程! 谷歌可穿戴式产品再度来袭:会说话的鞋子 未来Chrome OS或取得Android般成功 云落地@北京,北京市北斗公共平台或开放API? GitHub再遭攻击 主要服务中断约一小时 移动开发者将有望拥有.app域名使用权 微信将推“游戏中心”?移动互联网入口圈地加剧 美国航空公司首次开放API 并举办“黑客马拉松”编程大赛 谷歌数据中心设计的10条“黄金法则” GitHub时代:为什么我们都在开源 VMware发布Horizon Suite 三款应用打包折扣低 TOP30+应用排行榜:二月份国内外综合榜单 开源是否意味着不需要负任何责任? 微软年度科技展 酷炫技术知多少 图解Hadoop生态系统 HTML5并不给力 微软IE10又默认启用Flash Oracle出新提案:Java正逼近iOS? 谁有2002年度mcse考试试题? 再贴程序员征婚照:) 在线的进来问点问题(jsp/javabean), 实在没有分了其它帖子中送出 请问哪里有介绍用Delphi开发类似Foxmail邮件程序的文章 讨论一下怎么看别人写的代码吧 有个BC源程序用了BC下特有的类complex类,怎样做才能在VC下编译通过? VB高手请进来!!!! 小弟想考cisco认证(ccna),请大家推荐好的书籍和站点! J2EE我下载了,怎么用?安装我会,安装后怎么用? 这段程序有内存泄露吗? 强列抗议???? 有关QueryInterface的菜鸟问题 如何实现和ITS原子钟进行国际标准时间较正、查询? 哪有《Essential C++》电子书,下!谢谢 在单击GRID风格的数据窗口中的行时,row参数能指示当前点击的...(请进) 请问如何使用IIS5.0 ASP连接AS400数据库,我使用ODBC为什么不可以? IE菜单问题 怎样区别打开文本文件是big5码还是gbk码?? 大侠们,更新数据库里面的Images类型的字段的SQL语句怎么写啊,有什么好方法吗? Visual studio .net是用什么开发的啊?大家来讨论一下 求好书!!!! 我如何是好! c++的CODE如何才能最好的移植成java的 求好书!!!! 谁有字符串的压缩算法!!!慷慨送分!!! 视频数据如何在数据库中操作 求好书!!!! ??? 我需检验某表单的文本框中只能有数字,字母等字符,是用javascript做,还是用JSP做? 求好书!!!! 我为何添加不了成员变量 浏览器不能浏览JAVA2写的Applet,那里可有升级包? 还是有关于图片上传,请高手帮忙 加强型的 MSFlexGrid 我认识 KiteGirl(小仙妹) ( 是个好女孩 代表到底是什么东西? 有良知的中国人近来看看! 在vb中做的ActiveX DLL文件如何在vc中调用????? 谁能给我提供磐英810主板的显卡驱动 请问用PDM从数据库中反生成的数据模型,连接到另外的数据库中生成库表,为什么会失败? 请问如何将office2000或office xp 的激活提示除掉 怎么在LINUX下编译JAVA? 请问foxbill:.h文件之前的这些都是什么意思? MEMFILE例子的-----送分帖! 请问如何将office2000或office xp 的激活提示除掉 关于class的问题 我的“路由和远程访问” 出了一个怪问题 用VB设计自己的E-mail系统 这个就是你们说的美女檬檬吗? 我觉得....... 两个小问题————高手赐教! 一个局域网内监控程序,有点问题,请大家帮忙看看! 如图,已知梯形ABCD中,AB//DC,三角形AOB的面积等于9平方厘米,三角形AOD的面积等于6平方厘米.(1)求三角如图,已知梯形ABCD中,AB//DC,三角形AOB的面积等于9平方厘米,三角形AOD的面积等于6平方厘米. 普通玻璃和浮法玻璃的区别是什么?我总是区分不清楚... 用竖直向上的拉力F可使一物体向上以加速度5m/s²做匀加速运动,为使该物体向上以加速度10m/s²做匀加速运动,竖直向上的拉力大小应改为a.2fb.8/3 fc.2/3 fd.4/3 f(f 均为F) 如图,已知梯形ABCD中,AB‖DC,△AOB的面积等于9△AOD的面积等于6,AB=7,求CD的长 15mm浮法的玻璃什么价位 物体在地球上的重量等于在月球上的6倍,如果小强在月球上称比在地球上称轻30千克,那么小强在月球上称体重 玻璃固定在墙上的办法 电子台称如何将公斤调成市斤 测量电阻和小灯泡伏安实验.每次都不知道选什么电表,阻值不知道选哪个,还有什么时候外接,什么时候内接.每次考试都在这里丢分 玻璃怎么固定到墙上买了个不是很长但可以照全身的镜子,想固定在墙上,该用什么办法?请各位大侠支招!听说有个什么双面胶可以的,但不知道具体是什么玻璃胶,但不是玻璃胶! 重力和电场力的作用下为啥会这样运动? 高中物理电学实验测电表内阻怎么用电流表和电压表测一个电表的内阻,还是电流(压)表的测量范围不够,怎么用一个电阻进行改表?不是用G表来测,就是电流(压)表和电阻就可以测出内阻 玻璃怎么固定在墙上开鞋子店,怎么把玻璃固定在墙上摆放鞋子. 电场力和重力什么情况平衡做到过这样的题目,为什么这里会有Eq=mg不能理解,它们明明不是在一条直线啊,而且还有一个洛伦兹力.如图5. 质量为m、带电量为q的微粒以速度v与水平成45°角进入匀 玻璃的原材料是什么水晶石.石英石.石英砂有什么区别 物体50KG,摩擦因数0.2 ,用80N的拉力拉动,问摩擦力 关于电场力与重力问题在电场中怎么知道重力是不是就是电场力? 玻璃原料是什么 用80N的水平力推一个250N重的物体而未推动,则此时物体受到的摩擦力为 N.若将推力增大到100N,物体仍未运动,此时物体受到的摩擦力为 N.当向该物体施加120N的推力时,刚好让该物体匀速前进,则 把木箱放在电梯地板上,则底板所受压力最大的情况是 A.电梯以a=1.5m/s^2的加速度匀加速上升A.电梯以a=1.5m/s^2的加速度匀加速上升B.电梯以a=2.0m/s^2的加速度匀减速上升C.电梯以a=1.8m/s^2的加速度 玻璃原料是哪几种 求一道初中电学的题的讲解如图 电源电压不变 滑动变阻器滑动头位于正中央 闭合开关S后 M,N,P三灯亮度相同 现将变阻器的滑动头缓慢向左移动 则三灯亮度从亮到暗的排列顺序是( )A.M,N,P B 怎么判断电场力和重力平衡? 高中物理电学实验分压限流,内接外接,之类的使用在那里的? 基础的帮我解释下如图,电源电压恒定,闭合开关,滑片向右移动,L2会变亮,为什么? 电梯从一楼开始以0.5m/s的加速度匀加速上升,速度达到2m/s后,再匀速上升一段距离,最后以大小为0.5m/s的平方的加速度匀减速运动,到达30层楼停止运动.如果上升高度为128m,求电梯运动的时间 用这种方法测电源电动势和内阻时,误差在哪?会有怎样的测量结果?(已知两电压表的电阻.) 5.小红家的电表允许通过的最大电流是10A,她家有4个标有“220V,60W”的灯泡,1个标“220V,1000W”的热水器1台,制冷时耗电140W的电冰箱和一台耗电80W的电视机,则( )A.所有用电器可以同时使用 B.除 重力和电场力形成的复合场方法当电场力方向竖直向上,对于可以做圆周运动的小球来说,它的最低点在哪里?怎样确定?当受到的电场力方向竖直向下,对于可以做圆周运动的小球来说,它的最低 30.测量电流表内阻的电路图如图所示,实验的操作步骤如下:① 将电阻箱R的电阻调到零;②闭合开关,调节滑动变阻器R1的滑片,使得电流表达到满偏电流I0;③ 保持滑动变阻器的滑片位置不 14.课外活动小组的同学设计制作了一个电热孵卵器,他们用两根额定电压和额定功率都相同的电热丝作热源,再连入一个电阻R0,使这台孵卵器即使断了一根电热丝,单丝工作产生热量的效果仍然 已知A物体与地面间的摩擦力为10N,物体A运动的速度为20cm/s,则拉力F为____N ,拉力的功率为______W 电压表与电源、多条支路并联,究竟测的是谁的电压?这是为什么呢?不是也并联在电阻两端吗? 初中竞赛电学题,求解释. 因为月球上没有()和(),所以,月球上没有()和(),月球引力比地球小很多,只相当于地球引力的() 高中物理电学实验有几个? 如图,已知EF是梯形ABCD的中位线,三角形DEF的面积为4平方厘米,则梯形ABCD的面积为多少平方厘米 浮法、格法、平板玻璃区别 关于春夏秋冬的成语和古诗有哪些 图5表示一个斜抛物体的运动,当物体由抛出位置1运动到最高位置2时,重力做功是多少?重力势能改变了多少 什么是浮法格法玻璃 春夏秋冬的古诗、成语和名言!几个不合格哦! 对正电荷,在电势越高的地方电势能越大;对负电荷,在电势越低的地方电势能越大; 这里的这里的正电荷 与负电荷均指正场源电荷和负场源电荷吗?还是在一个无论正负点电荷作为场源电荷,放 玻璃常用的分为几种 比如(平板、格发、浮法) 都有什么区别(平板、格发、浮法) 都有什么区别 帮忙找一下描写春夏秋冬的古诗!要诗句! 电势高的地方的电势能一定比电势低的地方的电势能大吗? 玻璃的隔法和浮法英语应该怎么说RT 测电阻,但凡能用限流接法的,都能用分压吗?若有例外的请举出, 势能是不是相对位置而具有的能?势能怎么来的啊,我晕乐,电势能功和能有啥关系 这是内容:当R比R′大很多时,可以认为rg=R′.(当R比R′大很多时,调节R′基本上不改变电路的总电阻,可认为总电流不变,因此当电流表半偏时,通过R′的电流是满偏电流的一半,两条分路的电阻相 我国玻璃的产能最大的省份是 为什么:正电荷在电势高的地方电势能大,负电荷在电势低的地方电势能小? 测电压表内阻时为什么要求滑动变阻器的电阻越小越好?测电流表内阻时为什么要求滑动变阻器的电阻越大越好? 谁会高中物理电学实验 请在这里概述您的问题如图,已知梯形ABCD中的,AB‖DC,△AOB的面积等于9平方厘米,△AOD的面积等于6平方厘米.1)△BOC的面积2)求DO:OB和CO:OA的值要用黄金比那一课的知识点,不要用其他的,暂 什么叫普通浮法双层玻璃指建筑物塑钢窗玻璃 在高中物理电学实验题目中给你一个比如6V,1.5W的小灯泡和6V的直流电源(不计内阻),要怎样计算来选择电压表和电流表? 如图,已知梯形ABCD中,AB∥DC,△AOB的面积等于9平方厘米,△AOD的面积等于6平房厘米.(1)求△BOC的面积 高中物理电学实验测待测电阻的阻值没有特殊要求是不是都要用分压法? 怎么去掉玻璃上的蜡烛油?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘