COM对象的标识——CLSID

《COM原理与应用》笔记

客户程序通过一个全局唯一标识符进行COM对象的创建和初始化工作。COM规范采用了128位全局唯一标识符GUID。
  下面是一个GUID的例子
  {54BF6567-1007-11D1-B0AA-444553540000}
  在C/C++中可以用这样的结构来描述:
  typedef struct _GUID
  {
    DWORD Data1;
    WORD Data2;
    WORD Data3;
    BYTE Data4[8];
  }GUID;
  前面的GUID例子可以定义为
  extern "C" const GUID CLSID_MYSPELLCHECKER =
    { 0x54bf6567, 0x1007, 0x11d1,
    { 0xb0, 0xaa, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00 }};
  COM库提供了以下API函数可以产生GUID:
  HRESULT CoCreateGuid(GUID *pguid);
  如果创建GUID成功,函数返回S_OK,pguid指向得到的GUID值。
  CLSID是用来标识COM对象的GUID,它在结构定义上与GUID一致。GUID并不是专门用来定义COM对象标识符的,它也用于定义其他实体的标识符,比如接口标识符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值