社区
ATL
帖子详情
VC如何调用ATL写的COM EXE组件(进程外组件)? 急!!!!!!!!!!
sunmz_wjxy
2007-07-26 04:02:50
用ATL写了一个EXE.抛出一个接口.但不知道如何调用?
...全文
308
3
打赏
收藏
VC如何调用ATL写的COM EXE组件(进程外组件)? 急!!!!!!!!!!
用ATL写了一个EXE.抛出一个接口.但不知道如何调用?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sunmz_wjxy
2007-07-26
打赏
举报
回复
为什么我用ATL写的Executable(exe)写的EXE,CoCreateInstance可以成功创建COM对象,但无法调用此接口的对象.
而使用Service(exe)写的EXE,一切OK
不明白为什么?????请高手指点..................
sycnick
2007-07-26
打赏
举报
回复
如果是远程的组件,请使用CoCreateInstanceEx
CS_zzd_DN
2007-07-26
打赏
举报
回复
和进程内COM一样的
CoInitialize (NULL)
CoCreateInstance(REFCLSID rclsid,
LPUNKNOWN pUnkOuter,
DWORD dwClsContext,
REFIID riid,
LPVOID * ppv
)
CoUninitialize ()
ppv就是你要的接口,可以直接用
当然,你得事先知道CLSID和IID
Visual C++实践与提高-
COM
和
COM
+篇『PDF』
因文件超过20M不能上传,所以拆分为两个文件分次上传 第1章
COM
背景知识 1.1
COM
的起源 1.1.1 软件业面临的挑战 1.1.2 传统解决方案 1.1.3 面向对象程序设计方法 1.1.4 最终解决方案:
组件
软件 1.1.5 面向对象的
组件
模型——
COM
1.2
COM
的发展历程 1.2.1
COM
以前的对象技术:DDE、OLE 1、VBX控件 1.2.2
COM
首次亮相:OLE2 1.2.3 Microsoft拥抱Internet:ActiveX 1.2.4 更多的新名词:Windows DNA和
COM
+ 1.2.5 远程对象:ORBs和D
COM
1.2.6
COM
的最新版本:
COM
+ 1.3
COM
技术现状 1.3.1
COM
与CORBA 1.3.2
COM
与Enterprise Java Beans 1.3.3 Windows之
外
的
COM
小结 第2章 从C++到
COM
2.1 C++客户重用C++对象——例程DB 2.1.1 C++对象 2.1.2 客户程序 2.2 将C++对象移进DLL中——例程DB_cppdll 2.2.1 成员函数的引出 2.2.2 内存分配 2.2.3 Unicode/ASCII兼容 2.2.4 例程实现 2.2.4.1 修改接口文件 2.2.4.2 修改对象程序 2.2.4.3 修改客户程序 2.3 C++对象使用抽象基类——例程DB_vtbl 2.3.1 问题:私有数据成员被暴露 2.3.2 解决方案:抽象基类 2.3.2.1 什么是抽象基类(Abstract Base Class) 2.3.2.2 实现秘诀:虚函数(Virtual Functions) 2.3.3 使用抽象基类 2.3.4 例程实现 2.3.4.1 修改接口文件 2.3.4.2 修改对象程序 2.3.4.3 修改客户程序 2.4 改由
COM
库装载C++对象——例程dbalmost
com
2.4.1
COM
库 2.4.2 对象创建的标准入口点 2.4.3 标准对象创建API 2.4.4 标准对象注册 2.4.5 例程实现 2.4.5.1 修改接口文件 2.4.5.2 修改对象程序 2.4.5.3 修改客户程序 2.5 将C++对象变成
COM
对象 2.5.1 引用计数 2.5.2 多接口 2.5.3 IUnknown接口 2.5.4 标准类厂接口:IClassFactory 2.5.5 对象代码的动态卸载 2.5.6 自动注册 2.5.7 例程实现 2.5.7.1 修改接口文件 2.5.7.2 修改对象程序 2.5.7.3 修改客户程序 2.6 为
COM
对象添加多接口支持 2.6.1 多接口 2.6.2 DEFINE_GUID 2.6.3 例程实现 2.6.3.1 修改接口文件 2.6.3.2 修改对象程序 2.6.3.3 修改客户程序 小结 第3章
COM
基础知识 3.1 对象与接口 3.1.1
COM
对象 3.1.2
COM
接口 3.1.3 IUnknown接口 3.1.3.1 生存期控制:AddRef和Release 3.1.3.2 接口查询:QueryInterface 3.1.4 全球唯一标识符GUID 3.1.5
COM
接口定义 3.1.6 接口描述语言IDL 3.2
COM
应用模型 3.2.1 客户/服务器模型 3.2.2
进程
内
组件
3.2.3
进程
外
组件
3.2.4
COM
库 3.2.5 HRESULT返回值 3.2.6
COM
与注册表 3.3
COM
组件
3.3.1 实现类厂对象 3.3.2 类厂对象的创建 3.3.3 实现自动注册 3.3.4 实现自动卸载 3.4
COM
客户 3.4.1
COM
对象创建函数 3.4.1.1 CoGetClassObject 3.4.1.2 CoCreateInstance 3.4.1.3 CoCreateInstanceEx 3.4.2 如何
调用
进程
内
组件
3.4.3
COM
客户
调用
进程
外
组件
3.5 进一步认识
COM
3.5.1 可重用机制:包容和聚合 3.5.2
进程
透明性 3.5.3 安全性机制 小结 第4章
COM
扩展技术 4.1 可连接对象机制 4.1.1 客户、接收器与可连接对象 4.1.1.1 接收器 4.1.1.2 可连接对象 4.1.1.3 客户 4.1.2 实现可连接对象 4.1.3 实现接收器 4.1.4 建立接收器与连接点的连接 4.1.5 获得出接口的类型信息 4.2 结构化存储 4.2.1 什么叫结构化存储和复合文件 4.2.2 存储对象和IStorage接口 4.2.2.1 IStorage接口 4.2.2.2 获得IStorage指针 4.2.2.3 释放STATSTG内存 4.2.2.4 枚举存储对象中的元
《用纯粹的C++编
写
COM
组件
》配套
VC
源代码
本文提供一个完全用C++实现的
进程
内(DLL)
COM
服务器,不要
ATL
或MFC提供任何支持。用这种方式编
写
COM
对象可以让你深入地洞察到
COM
处理
进程
内服务器的方法以及
COM
是如何创建类工厂的。利用本文提供的这个简单框架你可以实现很基本的
COM
组件
,如
外
壳扩展(Shell Extensions)等。如果你在使用过程中发现了任何问题,请将它反馈到
vc
kbase@。...... 关键字:C++,
COM
使用WTL进行Windows桌面应用开发-第二部
1. 在第一部基础上增加更深入的内容,比如WTL提供的标准Win32窗口和自定义窗口的使用方式.2. 涉及到一些项目开发难题的窗口自定义的解决方案。3. 涉及到Gdiplus绘图的项目开发难题的一些解决方案。4. 推荐使用的第三方跨平台库, 虽然WTL是基于Windows的,但是不妨碍我们使用第三方的库进行开发,减少跨平台开发的学习成本。5. WTL是对Win32窗口的薄封装,库是原微软员工开发,是MFC的替代选择。掌握了WTL表示你已经基本掌握了Win32的窗口编程.6. 使用WTL库完全使用C++开发,不需要其他编程语言,减少学习成本和复杂度,整个WTL是开源可控的。7. WTL库只能使用VS2005以上版本开发, 因为它依赖
ATL
库. 不同的VS版本对应的
atl
版本不一致,建议使用VS2010以上版本开发.
【Win32】
进程
内
COM
的两种复用方式(包容和聚合)
进程
内
COM
组件
的两种复用方式,包容和聚合,压缩包内有两个工程与之对应。采用Win32 API,
VC
8,非
ATL
或MFC实现。
【Win32】
进程
内
COM
的实现
使用
VC
8,Win32 API,非
ATL
或MFC,实现
进程
内
COM
组件
。压缩包内有三个工程,包括,使用嵌套类实现IUnknown接口的
COM
、使用多继承实现IUnknown接口的
COM
,实现IDispatch接口的Automation。
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章