温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

DCOM(分布式组件对象模型)原理浅析(一)

发布时间:2020-07-26 22:37:27 来源:网络 阅读:2113 作者:liam2199 栏目:编程语言

     (分布式组件对象模型)是一系列微软的概念和程序接口,利用这个接口,客户端程序对象能够请求来自网络中另一台计算机上的服务器程序对象。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将为你屏蔽底层网络协议的细节,你只需要集中精力于你的应用。

 

      COM已经不再是单纯的技术和编程规范,而是一种研发思想,在这里,我们逐步分析COM与DCOM思想,带领大家进入分布式系统的殿堂。

     这次,我们讲解COM对象的创建字典对象的CreateObject函数。

/*
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);
}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI