COMDCOM技术简介.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
COMDCOM技术简介

COM/DCOM技术简介 Component Object Model Distribute COM COM 组件对象模型,是以组件为发布单元的对象模型 提供组件之间的交互规范,和交互环境 使用COM接口 在COM下,对对象的直接访问是不允许的,与对象的通信是通过定义良好的接口而进行的 标识COM接口和对象 GUID(globally unique identifier) IID(interface identifier) CLSID(class ID) 版本问题 通过把接口定义为可以应用于其对象的一个或多个相关函数的组,修改接口只是创建新的身份和责任的全新接口 使用IUnknown 每个COM对象都支持Iunknown接口,每个COM接口也包括Iunknown接口,它用作COM中所有通信的起点 AddRef Release QueryInterface 引用计数 COM采用引用计数技术来解决内存管理的问题,COM对象通过引用计数来决定是否继续生存下去。 接口查询 所有COM接口都继承于Iunknown,所有的接口都有QueryInterface成员函数 通过QueryInterface获得该对象所支持的任何一个接口指针 创建对象 CoCreateInstance函数 类工厂 创建COM对象的实例 在注册表中查找类对象 HKEY_CLASS_ROOT\CLSID\clsis\… COM对象创建实例 main() { IAS15Demo* pInt; CoInitialize(NULL); CoCreateInstance(CLSID_AS15Demo, NULL, CLSCTX_SERVER, IID_IAS15Demo, pInt); pInt-DoSomething(); … } Object Creation In-Process Object Creation Remote Calling An Interface Method COM/DCOM特性 可重用性 语言无关性 位置透明性 多线程 灵活的安全配置 多种网络传输协议 多种对象的访问形式 灵活的安全策略 多种网络传输协议 COM核心服务 Security Lifecycle Management Type Information (Interface Repository) Monikers (Naming) Automation (Dynamic Invocation) Data Transfer Component Categories Registry COM库结构 可连接对象 客户与组件之间的通信过程是单向的 连接点技术使组件可以主动的与客户进行通信 结构化存储 结构化存储是一个文件内的文件系统。可以看成是由存储(Storage)和流构成的层次树 存储对象类似与目录对象 流对象类似与文件对象 命名与绑定技术 Moniker技术允许客户程序通过符号化的方式访问对象 绑定技术使客户可以联接到已经存在的对象上 名字管理与ROT表 统一数据传输 剪贴板 OLE拖放 链接与嵌入 IDataObject 自动化Automation Automation允许通过使作高级的宏语言或脚本语言在一个程序内部操作另一个应用程序的属性和方法 并发管理 组件的线程模型 STA (Single-Threaded Apartments) MTA (Multithreaded Apartment) DCOM的执行性能 用VC开发COM应用 Win32 SDK MFC ATL MFC对COM应用的支持 用嵌入类实现COM对象 CCmdTarget类实现Iunknown 接口映射表实现多接口 COleObjectFactory实现类工厂 用ATL实现COM应用 建立小巧、快速的COM组件 支技COM的高级特性-双接口,连接点等 * Client Process Client COM Runtime 1 SCM 2 Registry {CLSID} Server.DLL Component 3 5 object 4 Surrogate Process Component 5 ISurrogate Client COM Runtime 1 SCM 2 Registry {AppID} RemoteServerName 3 4 COM Runtime SCM 7 {CLSID} Server.DLL Registry {AppID} DllSurrogate object 6 Client Process COM Client App In-Process Server

文档评论(0)

pan_1984 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档