• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > COM小问题

COM小问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了com 检查失败问题,dr.com问题,dr.com常见问题,com问题,78.com致富小项目等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: COM小问题
描述:

我最近看一个COM的简单的小程序
其中有一个头文件,其中这样写道
// GUID of our COM server
_declspec(selectany) GUID CLSID_Mine = { 0xdc186800,
  0x657f,
  0x11d4, 
  { 0xb0, 0xb5,  0x0,  0x50,  0xba,  0xbf,  0xc9,  0x4  }
};
// interface definition
// for sample COM server just replace the uuid of interface and its name
// and add new method prototypes here ..
// 
interface __declspec(uuid("F614FB00-6702-11d4-B0B7-0050BABFC904")) ImyInterface : public IUnknown
{
STDMETHOD(Square)(long *pVal)PURE;
STDMETHOD(Cube)(long *pVal)PURE;
};
请问这个CLSID_Mine 是从哪里得来的?
这一串数字{ 0xdc186800,
  0x657f,
  0x11d4, 
  { 0xb0, 0xb5,  0x0,  0x50,  0xba,  0xbf,  0xc9,  0x4  }
};
和这一串数字uuid("F614FB00-6702-11d4-B0B7-0050BABFC904")) 
什么关系?


解决方案1:

IDL一般不用看的,你要写COM可以直接用ATL啊。

解决方案2:

都是从IDL文件中经过编译生成的,CLSID_Mine 是在IDL文件中,coclass的属性块中被定义的ID值,uuid(xxxxxxx)是接口的ID值,是在相应的接口的属性中被定义的。还原后很可能是这样:
[
    object,
    uuid(xxxxxxxxxx),   //the guid of the interface
    ......
]
 
  interface ImyInterface : IUnknown
{
      ...................
}
[
    uuid(xxxxxxxxxx)//the guid of your lib
    ..........
]
library xxxxlib
{
.............................
     [
       uuid(xxxxxxxxxx),  //the guid of the class
     ]
     coclass Mine
     {
        [default] ImyInterface
     }
}


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • COM问题,帮我看看
  • 初次使用COM,有编译链接问题请大家帮忙。
  • com的注册问题
  • 关于COM问题
  • COM注册失败问题
  • 修改COM属性问题
  • 关于COM的参数类型问题
  • 用COM的问题
  • 几个COM的问题,头疼中
  • COM事件,多线程问题?

相关文章

  • 2017-06-05 同步对象在vc程序中如何使用?
  • 2017-06-04 本地组件(exe)是否得先运行,本地客户才能用?
  • 2017-06-04 给DefView添加文件对象
  • 2017-06-05 怎么获取最前面窗口的标题。
  • 2017-06-05 如何在2000提升自己的进程的等级,让它不能被任务管理器关掉!
  • 2017-06-04 MSFlexGrid有一个Picture属性,是一个IDispatch接口指针,请问如何操作?
  • 2017-06-04 什么是Tear-Offs?
  • 2017-06-05 WaitForSingleObject阻塞问题
  • 2017-06-04 关于COM多线程模型的讨论!!!!
  • 2017-06-04 关于vc与matlab的混合编程(基于COM)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • vs2008编译mfc错误
    • 300分求对话框的多线程问题,在线等待,17点前结贴
    • 如何获取返回值为VARIANT的变量内容
    • 如何用ATL编写控件?
    • COM内存泄漏如何解决?
    • dcom指定用户访问的安全设置
    • 如何定义自己的消息???
    • 在VC++60中,做一个DLL,其中用到一个ActiveX控件,要怎么办?
    • 跨进程com初始化问题,很棘手,高手进来看一下
    • 高手请进!!关于程序自杀的这段代码,如何用于DLL?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有