亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用VB開發分布式應用

2019-11-18 17:52:20
字體:
來源:轉載
供稿:網友
微軟推出的VB是一個功能強大的開發平臺。它在“代碼重用性”上地加強是一個引人注目的特點。我們可以將需要多次重復使用的功能單元開發成activex組件(activexcontrol,activexexe,activexdll),然后在新程序中象使用vb標準控件及類一樣使用這些組件。activex組件給開發網絡應用帶來很大方便。我們可以將這些組件分布在網絡的不同機器上,構成分布式應用,就好象所有組件都在同一臺機器上一樣。很多朋友都有開發本地activex組件的經驗,本文將結合實例介紹一下如何將activex組件分布在網絡上構成分布式應用。

一、概述

  “activex"是微軟為分布式計算制定的一套標準,它的前身就是大家所熟知的“oleautomation"。當分布式應用通過網絡通訊時,activex可以使用兩種不同的機制對客戶請求作出響應。一種稱為“分布組件對象模式(dcom)”,只可以在windowsnt和windows95上使用;另一種是“遠程自動化(remoteautomation)",它可以在16位環境下構造分布式應用。

  這兩種分布式機制,有著極其引人的特點:與組件物理位置的無關性。也就是說,當你構造一個activex組件時,無需知道它將分布在那一臺機器上。同樣的組件,即可以將它放在本機,也可以將它分布在其它機器上而不需要從新編譯。這樣,根據網絡的性能和網絡結構的變化,我們可以方便的調整組件的分布策略。

  當然,用activex構建分布式應用的各個獨立組件,還有其它優點:

  構造遠程組件和構造本地組件的編程方法一模一樣,無須特殊的工程經驗??梢杂胊ctivex組件在服務器端實現復雜的商業規則。比起用dbms(如sqlserver)來完成同樣的工作,我們有更好地編程、維護、排錯手段。

  有大量的商業組件可以使用。而且這樣的組件會越來越多。我們只需將特殊的商業規則開發成組件,與購買的組件配合使用。

二、開發和調試

  開發分布式組件和開發本地組件相同,調試也可以在本地完成,本文不在贅述。(可以參看VB所帶的例子:/sample/clisvr/booksale/client/book_cli.vbp客戶端程序;/sample/clisvr/booksale/client/book_svr.vbp服務器程序。)在開發分布式服務器段組件時,請注意下列問題:

  服務器端的PRoject應為activexexe(進程外的activex組件)。這也很容易理解,不可能在兩臺機器上完成同一個進程,所以,不可能使用activexdll(進程內的組件)。

  在projectproperties對話框的組件欄目下,應設為remoteserverfile。這樣,在程序編譯時會生成一個vbr文件,在生成安裝盤時要用。大家知道,windows程序在系統注冊表中有注冊,此文件與注冊有關。

  class屬性應設為mutiuse,以便多個客戶應用可以使用它。

三、生成安裝盤

  服務器端組件及客戶端程序將安裝在不同的機器上,應利用setupwizard分別生成安裝程序。

  當生成客戶端程序安裝盤時,需提供服務器組件所在的機器名(以后可以修改),這將影響客戶端機器的注冊項,這些注冊項告訴客戶端程序,到那里去尋找相應的服務(即服務器端組件提供的服務)。微軟提供了工具,可以根據需要隨時修改這些注冊項。如果使用remoteautomation機制,可使用remautoconnectionmanager;如使用dcom機制,可使用dcomconfigurationmanager。remautoconnectormanager在VB軟件包中即有,在生成安裝盤時將自動包括它。windowsnt4.0中包含dcomconfigurationmanager,可直接使用。對于windows95,需從www.microsoft.com下載dcom95.exe及dcom95cfg.exe并運行,可得到dcomconfigurationmanager(注意要重新啟動機器)。

  利用上述工具,可實現如下功能:

  1.可以隨時切換服務器組件是在本地還是遠程。這樣可以方便的在本機調試遠程組件。

  2.可隨時改變服務器組件的安裝位置。

  如何生成服務器端安裝程序:

  1.使用setupwizard,按要求指明project文件所在的路徑,并指明“產生安裝程序”。

  2.在進入“shareactiveapplication”畫面時,選擇“安裝為一個共享組件”。如果你準備使用remoteautomation,在畫面下方選擇“yes";如使用dcom,選擇“no”。如果使用remoteautomation,remautoconnectionmanager(racmgr32.exe)、remoteautomationmanager(autmgr32.exe)將自動包含在安裝程序內。

  如何生成客戶端安裝程序:

1.使用setupwizard,按要求指明project文件所在的路徑,并指明“產生安裝程序”。

2.進入“activex組件”畫面時,按addremote按紐指定服務器組件對應的vbr文件(包含服務器組件的objectid等注冊信息)。

3.這時,會彈出“remoteconnectiondetails”對話框。選擇使用remoteautomation或dcom;輸入服務器的機器名。如果使用remoteautomation,還需確定通訊協議,如tcp/ip等。驗證級別用來保證客戶端與服務器間通訊的安全性。這是一個較為復雜的問題,為了簡化期間,選擇none即可。

4.返回“activexservercomponents”畫面。如果你的程序使用多個遠程組件,可逐一加入。相關的本地組件,可按“addlocal”一一加入。注意,系統缺省會將一些組件當作本地組件,不要將同一組件即當作遠程組件,又當作本地組件。

四、安裝與使用

  windowsnt4.0支持dcom,可直接安裝dcom分布式應用。對于windows95,需要安裝附加程序,以支持dcom分布式應用。但,windows95可直接安裝remoteautomation應用。

remoteautomation模式:

  分別在服務器及客戶端機器上安裝相應程序。在服務器端,要先啟動automationmanager(autmgr32.exe,安裝程序會自動將該文件拷到系統目錄下),客戶端才可建立連接。這種模式對操作系統要求較低,windows3.1,windows95,windowsnt等均可做服務器或客戶端。

  本方法提供的安全性較差,無法限制那些用戶可以連接或不可以連接。不過,系統還是提供了許多安全管理措施。讀者在學習時不妨做簡化處理:

  在服務器端啟動remoteautomationconnectionmanager(racmgr32.exe),在左側選相應的server組件,在右側clientaccess欄目下,選擇allowallremotecreates。

  關于客戶端的安裝,我們前面作過討論。利用remoteautomationconnectionmanager(racmgr32.exe),在serverconnection欄目下,我們可以隨時調整服務器組件的分布位置。

  remoteautomation這種模式提供了很大的靈活性,在安全性要求不高的場合,可以使用該模式。

dcom模式:

  要構造dcom應用,服務器端最好使用windowsntserver或windowsntworkstation,客戶端可使用windowsnt或windows95。這也符合實際應用的策略,servercomponent要求有較高的可靠性,一般分布在專用服務器上。
  在服務器組件安裝完畢后,要確定rpcservice是啟動的。在客戶端能夠建立連接之前,還需要配置訪問權限。

  為了簡單期間,你可以這樣做:

1.運行dcomcfg.exe(在系統目錄下)。

2.選擇相應組件,設置其properties。

3.在location欄目下,設為:runapponthiscomputer;在security欄目下,選擇定制安全性,并將權限給everyonefullcontrol。

  在客戶端的機器上,通過dcomcfg.exe,在location欄目下,可以指定服務器組件的安裝位置。
在windows95下構建dcom應用的特殊考慮:

  如果使用windows95做客戶端,應從VB的光盤或從www.microsoft.com找如下兩個文件:dcom95.exe,dcm95cfg.exe。安裝并重新啟動機器即可。

  如server端使用windows95,須考慮下列問題:

1.安全性將受到限制。

2.應手工在startup中加進server組件的啟動程序。

3.運行rpCSS.exe后,客戶端才可建立連接。

4.由于servercomponent是一個class,當沒有客戶程序參照它時,它會自動終止??墒?,windows95沒有自動啟動它的機制。所以,要保證servercomponent不會從內存卸載。辦法是:在servercomponent中加入一個form,visible為false。程序從form啟動。

5.應從VB的光盤或從www.microsoft.com找如下兩個文件:dcom95.exe,dcm95cfg.exe。安裝并重新啟動機器。

6.手工改變注冊表:hkey_local_machine/software/microsoft/ole/enableremoteconnection改為“y"。否則,會出現“runtimeerror,activecomponentcannotbecreate”

7.如同在windowsnt上一樣,運行dcomcfg.exe并進行配置。->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美亚洲国产日韩2020| 97人人做人人爱| 久久精彩免费视频| 亚洲女人天堂成人av在线| 日韩免费av片在线观看| 精品久久久久久久久久久久久| 久久精品人人爽| 成人妇女免费播放久久久| 91免费视频国产| 亚洲的天堂在线中文字幕| 欧美日韩另类在线| 久久五月情影视| 成人欧美一区二区三区在线| 久久这里只有精品视频首页| 亚洲精品久久久久中文字幕二区| 91精品国产精品| 亚洲精品www| 欧美在线一区二区三区四| 久久久久久久久久久免费| 欧美性猛交xxxx乱大交蜜桃| 成人中文字幕+乱码+中文字幕| 日本免费久久高清视频| 亚洲精品国产拍免费91在线| 国产精品久久久久久久久久免费| 日韩欧美在线观看| 亚洲一区二区三区毛片| 国产成人一区二| 成人精品一区二区三区电影免费| 久久亚洲精品小早川怜子66| 国产女人18毛片水18精品| 国产精品一区二区三区在线播放| 亚洲黄色片网站| 亚洲精品一区二区网址| 一区二区在线视频| 欧美在线不卡区| 亚洲激情 国产| 亚洲精品自拍第一页| 国产视频精品在线| 亚洲片国产一区一级在线观看| 欧美精品在线观看91| 日韩精品免费看| 久久激情五月丁香伊人| 亚洲男女性事视频| 亚洲人成网站色ww在线| 国产精品成人品| 亚洲精品中文字幕女同| 欧洲精品毛片网站| 国产成人精品在线视频| 精品国产拍在线观看| 国产精品精品视频一区二区三区| 国产精品一区二区av影院萌芽| 欧美激情小视频| 亚洲福利在线播放| 国产91精品久久久久久久| 国产精品狠色婷| 国产日本欧美一区二区三区| 国产精品r级在线| 亚洲欧洲日产国产网站| 岛国视频午夜一区免费在线观看| 国产精选久久久久久| 91久久国产精品| 在线视频亚洲欧美| 精品视频在线观看日韩| 高清日韩电视剧大全免费播放在线观看| 亚洲视频axxx| 欧美午夜性色大片在线观看| 欧美日韩一二三四五区| 国产精品久久久久久网站| 久久久久久欧美| 亚洲国产高清自拍| 人妖精品videosex性欧美| 亚洲免费视频在线观看| 98精品在线视频| 一区二区三区在线播放欧美| 国产欧美日韩中文字幕在线| 色无极亚洲影院| 亚洲天堂av综合网| 久久香蕉频线观| 色婷婷av一区二区三区久久| 日韩毛片在线观看| 欧美亚洲视频一区二区| 久久精品99久久香蕉国产色戒| 亚洲热线99精品视频| 精品av在线播放| 欧美大全免费观看电视剧大泉洋| 亚洲黄色av女优在线观看| 国内免费精品永久在线视频| 欧美日韩成人在线观看| 欧美第一页在线| 中文字幕欧美日韩在线| 亚洲自拍欧美色图| 日韩中文字幕视频在线观看| 4k岛国日韩精品**专区| 高清视频欧美一级| 欧美在线性视频| 欧美精品久久久久| 免费91在线视频| 亚洲欧美在线看| 亚洲国内精品视频| 国产成人激情小视频| 久久精品男人天堂| 欧美日韩国产二区| 亚洲综合社区网| 国产丝袜一区二区三区免费视频| 久久久亚洲欧洲日产国码aⅴ| 97精品国产97久久久久久| 精品久久中文字幕| 亚洲男人天堂久| 日韩欧美第一页| 久久久国产精品视频| 国产免费一区视频观看免费| 中文字幕精品在线| 色噜噜久久综合伊人一本| 亚洲成人精品av| 91久久综合亚洲鲁鲁五月天| 热久久这里只有精品| 久久久爽爽爽美女图片| 欧美成年人在线观看| 岛国视频午夜一区免费在线观看| 久久影视免费观看| 亚洲一级免费视频| 久久免费视频在线观看| 在线日韩av观看| 久久人人97超碰精品888| 欧美激情中文字幕乱码免费| 日韩精品免费视频| 2019最新中文字幕| 日韩在线视频免费观看高清中文| 都市激情亚洲色图| 日韩精品在线视频观看| 国产精品高清在线| 久久亚洲国产成人| 欧美在线观看网址综合| 97国产suv精品一区二区62| 日韩高清有码在线| 午夜精品久久久99热福利| 91九色精品视频| 欧美大尺度电影在线观看| 欧美激情乱人伦| 国产一区二区丝袜高跟鞋图片| 欧美黑人性视频| 欧美高清视频在线观看| 日韩av电影手机在线观看| 日韩成人在线免费观看| 国产精品久久久久久久电影| 亚洲第一av在线| 欧美黑人一级爽快片淫片高清| 日韩av在线高清| 国产精品一区专区欧美日韩| 一个人www欧美| 高跟丝袜一区二区三区| 日韩成人激情影院| 91精品国产综合久久男男| 欧美日韩第一页| 亲子乱一区二区三区电影| 久久九九免费视频| 欧美午夜精品久久久久久浪潮| 国内成人精品视频| 欧美日韩在线观看视频| 精品久久久中文| 午夜精品久久久久久久男人的天堂| 这里只有视频精品| 欧美性生活大片免费观看网址| 亚洲香蕉伊综合在人在线视看|