- 相關(guān)推薦
用VB構鍵Internet的應用
今天我們所要討論的問(wèn)題是利用Visual Basic創(chuàng )建在面向Internet的應用中起重要作用的ActiveX組件。例如,你所創(chuàng )建的ActiveX控件可以用于HTML頁(yè)面;你開(kāi)發(fā)的ActiveX文檔可以在Internet瀏覽器中使用并于其他的組件一起和HTML頁(yè)面集成起來(lái);另外ActiveX代碼組件(以前被稱(chēng)為OLE服務(wù)器), 可以被部署在客戶(hù)端或服務(wù)器端的計算機上用于后臺的處理。
Internet是一個(gè)使用TCP/IP協(xié)議、全球性的非集中管理的計算機網(wǎng)絡(luò )。如果去掉全球性這一點(diǎn), 所謂"Internet技術(shù)"完全可以和本地局域網(wǎng)中所使用的技術(shù)一樣。
從一方面來(lái)看, Internet技術(shù)只是簡(jiǎn)單地為開(kāi)發(fā)人員提供了另一個(gè)施展身手的空間。如果你在和Web連接時(shí)使用了ActiveX組件,盡管你具體實(shí)現的方法有可能不同,如采用了HTML和VBScript代碼以實(shí)現安全性或是其他,但是你仍然在調用方法,設置屬性,處理事件等等。這樣,作為一個(gè)VB開(kāi)發(fā)人員所有的知識和技能都被用于了Internet的環(huán)境下。
從另外一個(gè)方面來(lái)看,應用Internet的技術(shù)可以使你向一些吸引人的方向延伸你的開(kāi)發(fā)工作。例如將ActiveX組件和Internet技術(shù)綜合有以下的益處:
更簡(jiǎn)單的維護---作為Web一部分的組件可以根據需要下載,無(wú)須用戶(hù)運行一個(gè)setup程序進(jìn)行升級;
將功能延伸至Internet---通過(guò)通用協(xié)議,用戶(hù)將看不見(jiàn)在Internet和Intranet之間的切換。
Internet客戶(hù)/服務(wù)器
可以借用客戶(hù)機/服務(wù)器的關(guān)系來(lái)考查Internet的開(kāi)發(fā)環(huán)境,客戶(hù)端和服務(wù)器端都可以有"靜態(tài)的"和"活動(dòng)的"兩種狀態(tài);顒(dòng)的客戶(hù)機或服務(wù)器可以根據其內部狀態(tài)的改變而動(dòng)態(tài)地運行一個(gè)腳本或是改變其行為;而靜態(tài)的客戶(hù)機或服務(wù)器僅僅只是對外界激勵作出反應。
Internet開(kāi)發(fā)包括以下四種情形:
靜態(tài)的客戶(hù)機和靜態(tài)的服務(wù)器
靜態(tài)的客戶(hù)機和活動(dòng)的服務(wù)器
活動(dòng)的客戶(hù)機和靜態(tài)的服務(wù)器
活動(dòng)的客戶(hù)機和活動(dòng)的服務(wù)器
靜態(tài)的客戶(hù)機和靜態(tài)的服務(wù)器
靜態(tài)的客戶(hù)向靜態(tài)的服務(wù)器發(fā)送請求,服務(wù)器響應該請求并返回一個(gè)文件。一旦HTML頁(yè)面被下載到客戶(hù)端, 客戶(hù)機和服務(wù)器的連接就終止,直到服務(wù)器接受到下一個(gè)請求。在使用FTP下載文件或是Usernet閱讀新聞時(shí)也會(huì )發(fā)生同樣的情形。
結合靜態(tài)客戶(hù)機的功能即為用Visual Basic中和Internet技術(shù)相關(guān)的ActiveX控件創(chuàng )建一個(gè)FTP工具,一個(gè)Web瀏覽器或是一個(gè)新聞讀者等等。這些性能也可以被集成到一個(gè)大的應用程序中。
靜態(tài)的客戶(hù)機和活動(dòng)的服務(wù)器
假如你正在使用一個(gè)靜態(tài)的客戶(hù)端, 例如和一個(gè)當前應用程序相連接的Web瀏覽器窗體, 以下載一個(gè)HTML頁(yè)面,上面有文本框以輸入查詢(xún)內容,還有按鈕以把用戶(hù)輸入的條目作為一個(gè)字符串發(fā)送給服務(wù)器。當你發(fā)送完文本之后,服務(wù)器返回一個(gè)已定制過(guò)的HTML頁(yè)面-往往是通過(guò)調用一個(gè)DLL中的函數, 上面有你查詢(xún)的結果。這就是一個(gè)"活動(dòng)的"服務(wù)器的例子, 它自動(dòng)處理數據并根據條件返回一個(gè)定制的結果。
創(chuàng )建活動(dòng)服務(wù)器的途徑之一就是通過(guò)使用Visual Basic開(kāi)發(fā)的DLL并用Oleisapi2.dll實(shí)現訪(fǎng)問(wèn)。Oleisapi2.dll包含在Windows NT Server 4.0之中,是Internet Information Server (IIS)的一種功能,它包括了ISAPI的函數功能集。通過(guò)IIS和Oleisapi2.dll, 你可以在Web服務(wù)器上部署DLL, 并從客戶(hù)端使用HTML頁(yè)面上的信息或調用其方法。
活動(dòng)的客戶(hù)機和靜態(tài)的服務(wù)器
當客戶(hù)機擁有處理能力時(shí)稱(chēng)之為活動(dòng)的客戶(hù)機;顒(dòng)的客戶(hù)機擁有本地處理任務(wù)的能力,而不是請求服務(wù)器幫助處理。在客戶(hù)機/服務(wù)器應用中,本地處理的能力不僅提高了任務(wù)完成的速度,而且減輕了服務(wù)器的負擔。
活動(dòng)客戶(hù)機的情形有很多種。例如,用Visual Basic構建的ActiveX文檔幾乎可以包括所有傳統應用的功能。當你把它放到一個(gè)容器中時(shí), 例如Internet Explorer, 你的客戶(hù)端就完全擁有了傳統Visual Basic中所有的動(dòng)態(tài)功能?蛻(hù)端也可以通過(guò)在一個(gè)HTML頁(yè)面中使用VBScript調用ActiveX控件或DLL實(shí)現。
活動(dòng)的客戶(hù)機和活動(dòng)的服務(wù)器
如果采用活動(dòng)客戶(hù)機和活動(dòng)服務(wù)器的模式可以充分發(fā)揮優(yōu)勢: 分布式的功能便于擴展,靈活的解決方案可以充分利用系統和網(wǎng)絡(luò )資源。
在三層結構的客戶(hù)機/服務(wù)器環(huán)境中開(kāi)發(fā)部署的應用中,其組件分布于整個(gè)網(wǎng)絡(luò )上, 總起來(lái)完成提供用戶(hù)界面, 實(shí)現業(yè)務(wù)準則和數據訪(fǎng)問(wèn)的功能,而且由于可以充分利用客戶(hù)端和服務(wù)器端的處理能力,可以實(shí)現更復雜的數據訪(fǎng)問(wèn)功能。
一個(gè)活動(dòng)的服務(wù)器可以負責跟蹤客戶(hù)提交的查詢(xún)表格,提交查詢(xún)并返回結果。一個(gè)活動(dòng)的客戶(hù)機則負責將返回的結果展現給用戶(hù), 然后將改變的內容返回給服務(wù)器。另外通過(guò)Internet組件的下載,當用戶(hù)訪(fǎng)問(wèn)Web站點(diǎn)時(shí), 可以自動(dòng)更新客戶(hù)端提交查詢(xún)和處理結果的準則。
ActiveX組件為Internet技術(shù)帶來(lái)了新的功能。通過(guò)Internet組件的下載,超連接,菜單協(xié)商等各種功能,將ActiveX組件和Internet集成起來(lái),內容和應用程序之間的界線(xiàn)也越來(lái)越模糊。另外由于在站點(diǎn)上(在客戶(hù)機和服務(wù)器之間)分布功能函數,我們可以創(chuàng )建更具擴展性和靈活性的站點(diǎn)。
在Internet應用程序中使用ActiveX文檔
使用ActiveX文檔, 我們可以開(kāi)發(fā)和Internet/Intranet站點(diǎn)的其他元素緊密集成的Visual Basic的應用程序。利用這些組件開(kāi)發(fā)出來(lái)的應用程序,用戶(hù)可以透明地在HTML頁(yè)面和ActiveX文檔之間遷移。
可以把ActiveX文檔作為Visual Basic為Internet提供的應用。幾乎所有現在用標準應用程序完成的工作都可以用ActiveX文檔實(shí)現。
作為HTML頁(yè)面中的一個(gè)元素,如果在用戶(hù)的客戶(hù)機上沒(méi)有安裝ActiveX文檔, 當用到它們時(shí), 可以自動(dòng)地從網(wǎng)上下載;如果客戶(hù)機上的版本比較舊, 也可以可以自動(dòng)升級。ActiveX文檔的許多特性提供了很好的安裝,導航性能,并可以保證很好的持續一致性:
Internet組件的下載---你可以創(chuàng )建一個(gè)到你的ActiveX文檔的連接,使瀏覽器可以自動(dòng)找到并下載所有需要的組件。
超連接對象---在一個(gè)超連接感知的包容器中,你可以使用Visual Basic的超連接對象的屬性和方法以跳轉到一個(gè)給定的URL或是通過(guò)歷史的記錄清單進(jìn)行導航。
菜單和協(xié)商---由于可以從Word或Excel中獲得文檔,Visual Basic的ActiveX文檔提供了將其菜單嵌入瀏覽器中的菜單的功能。例如當文檔被裝載入Internet Explorer中后,瀏覽器的菜單將和你為該ActiveX文檔創(chuàng )建的菜單混合。
PropertyBag---當你在Internet Explorer中部署一個(gè)ActiveX文檔時(shí), 你可以通過(guò)PropertyBag對象保持數據的一致性。
下面我們來(lái)看一看如何在Internet Explorer中部署一個(gè)ActiveX文檔。假設我們要通過(guò)一個(gè)HTML頁(yè)面中的超連接連接到這個(gè)ActiveX文檔上:
1. 用HTML創(chuàng )建引用這個(gè)ActiveX文檔的連接。
由于A(yíng)ctiveX文檔將在Internet Explorer中取代HTML頁(yè)面,所以有必要將組件的OBJECT標簽放在另一個(gè)HTML頁(yè)面中。當跳轉到該頁(yè)面后,一旦ActiveX文檔被裝載,它就會(huì )立刻消失。
2. 用HTML為瀏覽器提供下載、注冊以及導航到這個(gè)ActiveX文檔的途徑。
在OBJECT標簽中應該說(shuō)明ActiveX文檔的類(lèi)ID和CODEBASE屬性。
3. 在同一頁(yè)面上, 使用VBScript指示Internet Explorer立刻通過(guò)相應的.vbd文件導航到該ActiveX文檔上。
在Internet應用程序中使用ActiveX控件
ActiveX控件為你的HTML頁(yè)面帶來(lái)了活力。通過(guò)HTML和VBScript, 你可以在一個(gè)HTML頁(yè)面上使用ActiveX控件, 設置它們的屬性,調用它們的方法并處理它們的事件。一個(gè)包含控件的的HTML頁(yè)面仿佛一個(gè)Visual Basic的設計窗口。ActiveX控件可以提供更多的交互式的,生動(dòng)的用戶(hù)界面特性,使HTML頁(yè)面變得更加有活力。
一般需要通過(guò)HTML和VBScript的綜合手段引用并控制ActiveX控件的行為。使用HTML為瀏覽器提供下載,注冊并引用ActiveX控件引用的途徑。在HTML代碼的OBJECT標簽中需要包括:
控件的類(lèi)別ID, 以使程序能在Windows的注冊表中找到它們;
ID的屬性,以便在VBScript中引用該控件(類(lèi)似于Visual Basic中的Name屬性);
CODEBASE屬性,告訴瀏覽器如果組件不在客戶(hù)機上該去哪兒找;
PARAM NAME標簽,設置控件的屬性參數。
然后用VBScript編寫(xiě)處理單擊事件的代碼,使每一個(gè)控件被單擊后,程序可以作相應的動(dòng)作。
Visual Basic專(zhuān)業(yè)版中還包括了三個(gè)已預先設計好的用于包裹Internet相關(guān)技術(shù)的控件, 使你能夠擴展已有的應用程序,它們是:
Internet Transfer Control---包裹了三種通用的Internet協(xié)議:HTTP, FTP和Gopher;
WebBrowser Control---包含了許多通過(guò)Internet Explorer可以獲得的功能;
WinSock Control---使你可以連接到一臺遠程的機器, 然后通過(guò)UDP或TCP交換數據。
通過(guò)使用這些控件, 你可以添加從FTP站點(diǎn)自動(dòng)下載文件的功能,還可以為Visual Basic IDE提供Web瀏覽器的Add-in。
在Internet應用程序中使用ActiveX代碼組件
無(wú)論是在客戶(hù)端或是在服務(wù)器端, 都可以使用ActiveX代碼組件(.dll或.exe文件), 從而為HTML頁(yè)面添加功能。
在客戶(hù)端部署代碼組件, 由于用戶(hù)的命令無(wú)須通過(guò)網(wǎng)絡(luò )傳輸回服務(wù)器,可以大大提高運行速度。服務(wù)器端的組件同樣也可以有顯示用戶(hù)界面可視化元素的功能。通過(guò)下載一個(gè)DLL, 我們可以在HTML頁(yè)面上添加用戶(hù)界面的元素,如一個(gè)登錄對話(huà)框; 還可以提供幕后的客戶(hù)端處理能力,例如一個(gè)伴隨VBScript的函數庫。
客戶(hù)端的部署工作類(lèi)似于對ActiveX控件的使用,你同樣需要使用HTML和VBScript代碼引用并編寫(xiě)代碼組件。下面給出了一個(gè)用HTML和VBScript代碼編寫(xiě)調用DLL以顯示登錄對話(huà)框的實(shí)例:
1. 使用HTML創(chuàng )建一個(gè)窗體,其中包含一個(gè)按鈕以調用登錄對話(huà)框:
2. 用HTML為瀏覽器提供下載,注冊及引用ActiveX組件的途徑:
3. 用VBScript調用組件中的方法以顯示登錄對話(huà)框:
組件自身中將包含用于形成登錄字符串的代碼,并將它發(fā)送給服務(wù)器用于驗證。
另一種將DLL和Internet技術(shù)結合的方法是將它部署在服務(wù)器端。如果你有Internet Information Server (IIS)-包含在Windows NT Server 4.0中, 你可以通過(guò)Visual Basic關(guān)盤(pán)中的Tools目錄下的Oleisapi2.dll調用Visual Basic中內置的DLL函數。
Oleisapi2.dll中包含了ISAPI中的所有函數。你可以把DLL部署在HTTP服務(wù)器上, 并通過(guò)HTML頁(yè)面上發(fā)送的信息調用其方法。Oleisapi2.dll作為客戶(hù)請求到DLL之間的中介。由于代碼是基于HTML的,這些請求僅僅是簡(jiǎn)單的URL。
通過(guò)服務(wù)器端的DLL可以由客戶(hù)提供的參數定制返回給客戶(hù)的HTML頁(yè)面,還可以管理數據庫的連接,對接受到的請求和返回的結果進(jìn)行整理和編組。
【用VB構鍵Internet的應用】相關(guān)文章:
用VB構鍵Internet的應用-03-18
非Access數據庫在VB中的編程及應用03-18
MCU應用系統與Internet連接的一種新技術(shù)03-18
在中學(xué)英語(yǔ)教學(xué)中應用Internet的嘗試與問(wèn)題03-11
探析初中英語(yǔ)教學(xué)中Internet的應用03-19
Internet 與網(wǎng)絡(luò )審計03-23
用VB實(shí)現班主任工作的電子化03-19
VB與MATLAB混合編程在流量標定系統數據庫中的應用03-07
Internet時(shí)代的網(wǎng)絡(luò )出版03-18
最新推薦
- 網(wǎng)絡(luò )環(huán)境下核工業(yè)圖書(shū)館生存與發(fā)展SWOT分析及對策
- What do you think of Internet
- 使用JAVA編寫(xiě)網(wǎng)絡(luò )通信程序論文
- Improving Communicative Ability Via Internet
- 論信息技術(shù)在外語(yǔ)教學(xué)中的應用
- 支持多系統網(wǎng)絡(luò )批量安裝的服務(wù)器實(shí)現
- 醫院管理中計算機網(wǎng)絡(luò )系統的應用
- 小型企業(yè)網(wǎng)絡(luò )辦公系統ASP+SQL
- 無(wú)線(xiàn)傳感器網(wǎng)絡(luò )協(xié)作技術(shù)綜述
- 計算機網(wǎng)絡(luò )畢業(yè)論文-網(wǎng)絡(luò )與未來(lái)出版
- vb論文
- 用英文寫(xiě)簡(jiǎn)歷
- 用英語(yǔ)寫(xiě)簡(jiǎn)歷
- 用word做簡(jiǎn)歷
- 用word制作簡(jiǎn)歷
- 簡(jiǎn)歷用什么格式
- 用word寫(xiě)簡(jiǎn)歷
- 應用電子簡(jiǎn)歷
- 用英語(yǔ)自我介紹
- 電子簡(jiǎn)歷用什么格式