其實這種提法本身就及不科學,DCOM本身就是COM的一種表現形式,但是由於大家聽見COM一般就把它當成在本地執行的COM,而DCOM當然就是分布的COM,在網絡上的另一台計算機上執行.於是就誕生了這篇COM與DCOM的區別與聯系.
區別:
COM有兩種存在形式,動態連接庫和可執行程序,但DCOM必須是可執行程序.因為DCOM不可能在客戶程序的內存空間運行,所以不能是動態連接庫.
COM(動態連接庫形式)可以不用RPC通信,而DCOM必須使用RPC遠程調用.
COM(動態連接庫形式)與客戶共同存在於同一內存空間,調用速度快,DCOM的速度只有COM的萬分之一.
COM(動態連接庫形式)的安全性不高,客戶程序可以造成服務COM發生錯誤,DCOM安全性高,原因也是COM與客戶程序共用內存空間造成的.
COM程序配置簡單,DCOM配置較復雜.畢竟DCOM牽涉到網絡和安全性.
聯系:
客戶程序不必知道COM的存在形式,有統一的接口調用方式,客戶程序甚至不知道COM對象的位置,可能在同一台計算機上,也可以在半個地球的另一面;
由於DCOM本身就是COM的一種存在形式,具有許多共同點.