簡單講解VB開發(fā)分布式
本文向大家介紹VB開發(fā)分布式,可能好多人還不了解VB開發(fā)分布式,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。
微軟推出的VB是一個功能強大的開發(fā)平臺。它在“代碼重用性”上地加強是一個引人注目的特點。我們可以將需要多次重復使用的功能單元開發(fā)成 activex組件(activex control,activex exe,activex dll),然后在新程序中象使用vb標準控件及類一樣使用這些組件。 activex組件給開發(fā)網(wǎng)絡應用帶來很大方便。我們可以將這些組件分布在網(wǎng)絡的不同機器上,構成分布式應用,就好象所有組件都在同一臺機器上一樣。很多朋友都有開發(fā)本地activex組件的經驗,本文將結合實例介紹一下如何將activex組件分布在網(wǎng)絡上構成分布式應用。
一、概述
“activex"是微軟為分布式計算制定的一套標準,它的前身就是大家所熟知的”ole automation".當分布式應用通過網(wǎng)絡通訊時,activex可以使用兩種不同的機制對客戶請求作出響應。一種稱為“分布組件對象模式(dcom)”,只可以在windows nt和windows 95上使用;另一種是“遠程自動化(remote automation)",它可以在16位環(huán)境下構造分布式應用。
這兩種分布式機制,有著極其引人的特點:與組件物理位置的無關性。也就是說,當你構造一個activex組件時,無需知道它將分布在那一臺機器上。同樣的組件,即可以將它放在本機,也可以將它分布在其它機器上而不需要從新編譯。這樣,根據(jù)網(wǎng)絡的性能和網(wǎng)絡結構的變化,我們可以方便的調整組件的分布策略。
當然,用activex構建分布式應用的各個獨立組件,還有其它優(yōu)點:
構造遠程組件和構造本地組件的編程方法一模一樣,無須特殊的工程經驗??梢杂胊ctivex組件在服務器端實現(xiàn)復雜的商業(yè)規(guī)則。比起用dbms(如sql server)來完成同樣的工作,我們有更好地編程、維護、排錯手段。
有大量的商業(yè)組件可以使用。而且這樣的組件會越來越多。我們只需將特殊的商業(yè)規(guī)則開發(fā)成組件,與購買的組件配合使用。
二、開發(fā)和調試
VB開發(fā)分布式組件和開發(fā)本地組件相同,調試也可以在本地完成,本文不在贅述。(可以參看VB所帶的例子:\sample\clisvr\booksale \client\book_cli.vbp客戶端程序;\sample\clisvr\booksale\client\book_svr.vbp服務器程序。)在開發(fā)分布式服務器段組件時,請注意下列問題:
服務器端的project應為activex exe(進程外的activex組件)。這也很容易理解,不可能在兩臺機器上完成同一個進程,所以,不可能使用activex dll(進程內的組件)。
在project properties對話框的組件欄目下,應設為remote server file.這樣,在程序編譯時會生成一個vbr文件,在生成安裝盤時要用。大家知道,windows程序在系統(tǒng)注冊表中有注冊,此文件與注冊有關。
class屬性應設為mutiuse,以便多個客戶應用可以使用它。
【編輯推薦】