天天看點

DCOM(分布式元件對象模型)原理淺析(一)

     (分布式元件對象模型)是一系列微軟的概念和程式接口,利用這個接口,用戶端程式對象能夠請求來自網絡中另一台計算機上的伺服器程式對象。DCOM基于元件對象模型(COM),COM提供了一套允許同一台計算機上的用戶端和伺服器之間進行通信的接口(運作在Windows95或者其後的版本上)。

      DCOM(分布式元件對象模型,分布式元件對象模式)是一系列微軟的概念和程式接口,利用這個接口,用戶端程式對象能夠請求來自網絡中另一台計算機上的伺服器程式對象。DCOM基于元件對象模型(COM),COM提供了一套允許同一台計算機上的用戶端和伺服器之間進行通信的接口(運作在Windows95或者其後的版本上)。

      Microsoft Distributed Component Object Model(DCOM)是Component Object Model(COM)的擴充,它支援不同的兩台機器上的元件間的通信,而且不論它們是運作在區域網路、廣域網、還是Internet上。借助DCOM你的應用程式将能夠任意進行空間分布。

由于DCOM是COM這個元件技術的無縫更新,是以你能夠從你現有的有關COM得知識中獲益,你的以前在COM中開發的應用程式、元件、工具都可以移入分布式的環境中。DCOM将為你屏蔽底層網絡協定的細節,你隻需要集中精力于你的應用。

 

/*
CreateObject函數建立字典對象,成功傳回指向IUnknown的接口指針,通過QueryInterface函數擷取IDicitionary接口指針,利用IDictionary接口指針就可以完成查字典的功能
*/
BOOL CreateObject(const CLSID& clsid, const IID& iid, void** ppv)
{
	hModual = LoadLibrary("DictComp.dll");
	if(NULL == hModual)
	{
		return FALSE;
	}
	
	typedef BOOL(_stdcall* MyFunctionType)(const CLSID& clsid, const IID& iid,void **ppv);
	MyFunctionType fnCreateObject;
	fnCreateObject = (MyFunctionType)GetProAddress(hModual, "CreateObject");
	if(NULL == fnCreateObject)
	{
		FreeLibrary(hModual);
		return FALSE;
	}
	return fnCreateObject(clsid,iid, ppv);
}      

繼續閱讀