COM的一些基础问题~!

cdm2179 2011-02-24 10:54:44
1、怎么判断一个DLL文件是不是COM实现的?我的DLL里面继承了IUnknow接口,但是无法#import "xxx.DLL",难道不是COM?这DLL也是我在COM原理第1章里面的演示程序拿的DictComp.dll。

2、MFC,ATL做的active控件有什么不同吗?是否都可以运行到任何地方?

请高手讲的通俗一点。。
...全文
70 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cdm2179 2011-02-24
  • 打赏
  • 举报
回复
知道了,没有IDL文件
cdm2179 2011-02-24
  • 打赏
  • 举报
回复
但是,我觉得它应该是COM了吧,因为要注册才能用,但是如果是com的话,为什么不能#import "xxx.DLL"
真相重于对错 2011-02-24
  • 打赏
  • 举报
回复
1、怎么判断一个DLL文件是不是COM实现的?我的DLL里面继承了IUnknow接口,但是无法#import "xxx.DLL",难道不是COM?这DLL也是我在COM原理第1章里面的演示程序拿的DictComp.dll。

com 组件 对象信息 是记录 在注册表里面的不是仅靠实现 IUnknow 几口 来完成的

2、MFC,ATL做的active控件有什么不同吗?是否都可以运行到任何地方?
mfc atl 基于的框架不同 ,但生成的控件 差别不大 ,只是 mfc 控件 必须 要求客户有 mfc 运行库支持
atl 不用
所以mfc形成的控件比较大, 但mfc 开发 Ui 比atl 方便
cdm2179 2011-02-24
  • 打赏
  • 举报
回复
1年前看的,看到貌似第3章了啊,讲什么聚合组合的,好像与我问的问题没关系啊
真相重于对错 2011-02-24
  • 打赏
  • 举报
回复
com 原理第二章 看完没?
一、C语言自我YY1)、C语言是许多高级计算机语言的基础,学好C语言能更好的学习其他高级语言,为以后的学习打基础;往深学C语言的话那就是学到C在Linux里的应用,Linux十分强大。2)、C语言是一种计算机程序设计语言。具有高级语言的特点,又具有汇编语言的特点。C语言可作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。3)、应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。4)、C语言是面向过程语言,C语言通过windows/linux平台下编译的,是直接运行在windows/linux平台下的,而XX始终是运行在他的虚拟机之上的;所以理论上C语言能做一些相对于比较底层的工作,像XX就不能编写Windows病毒。5)、如果要利用编程来做一些windows优化工作的话,建议还是利用C语言。C语言是目前世界上流行、使用最广泛的高级程序设计语言6、很多编译器,几乎所有操作系统Windows,Linux,Unix的大部分代码都是C,C在背后做了很多东西的,也许开发游戏用C++,安卓用XX更为合适,图形界面的用其他语言开发效率更高一些(因为他们封装了很多东西),但同样的原因导致略微接近底层的功能其他语言根本干不了!Windows的API都是按照C语言的格式给的,这也很能说明问题!嵌入式开发更是离不了C语言!纵观电脑发展几十年,C语无所不能呀!

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧