Visual Basic輕松"搞定"Browser及Ftp

發表于:2007-07-14來源:作者:點擊數: 標簽:
自從Internet盛行以來,人們對于文件下載、即時信息獲
  自從Internet盛行以來,人們對于文件下載、即時信息獲取、電子郵件傳送變得方便許多。 Internet可以說是21世紀人類科技的一大創新。由于這個重大改變,人們的生活方式也受到非常大的影響;電子購物、網上信息庫、網上股市實時交易如雨后春筍般的出現。以往,Visual Basic 4.0并沒有提供一個完整的solution供Visual Basic的愛好者設計Internet程序。 還好,VisualBasic 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。由屏幕顯示的DialogBox就可以知道系統是通過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改為Web browser。在屏幕的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分別改為Se
arch、  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的各項屬性設置如下:

Aclearcase/" target="_blank" >ccesstype=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選項下將ProjectName改為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 But ton,取回文件。有沒有發覺到在C:\目錄下面多了一個bbb.txt的文件?恭喜您成功了!

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97