Introduction to COM

COM 的基本概念
1. Interfaces: 在COM里,一个Interface是一个函数指针表,由Object来维护。所有Interface都是基于IUnknown。每个Interface都有一个唯一的Interface标识。IID
2. IUnknown: IUnknown定义了
    QueryInterface:
    AddRef:
    Release:
3. Reference Counting: Object决定什么时候object不再被使用了,可以释放自己了。
4. QueryInterface: 尽管每个Interface都暴露了函数供外界使用,COM中一般还是通过IUnknown::QueryInterface来返回一个Interface。
    HRESULT QueryInterface (REFIID iid, void **ppvObject);
5. Marshaling: 允许在一个进程的Object的Interface用在另外一个进程。一般认为线程间也是需要Marshaling.
6. Aggregation: 一种机制,允许一个COM作为另外一个COM的一部分来给用户使用。

 

posted on 2007-11-12 11:54  Hill Jing  阅读(191)  评论(0编辑  收藏  举报

导航