_ApplicationPtr和CComPtr的区别 各位高人:我一直对VC访问COM有些晕。一种方法是用#import <...filename.exe>生成.TLH和.TLI文件,在.cpp中用_ApplicationPtr myApp;来声明一个COM应用。我看ATL中又总是在讲CComPtr。两者是什么关系?这个_ApplicationPtr就是CComPtr吗?在哪里定义的? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 都是差不多的。CComPtr是通用智能指针模板类,通常用于对任意接口的封装。_ApplicationPtr是从_com_ptr_t派生的,这也是一个模板类,跟CComPtr差别不大,但它做了更多的封装,编译器导入类型库时都用它作为接口封装工具,能作为返回值类型。如果仔细看他们的源码,可以同时使用。 _ApplicationPtr 是已经封装好的一个智能指针CComPtr 是一个模板库,它可以封装各种类型的智能指针. 多谢两位高人。答复得很清楚。再追问一句:使用智能指针就是在使用ATL吗? 派生自IUnknown,IDispatch的应该可以吧 智能指针跟ATL没关联,谁都能用 CComPtr系属于ATL名字空间,当然CComPtr可以用于任地方。_com_ptr_t其名字空间根据跟你import的方式 Excel 中ATL控件 选中后消失的问题 怎么样在后台响应键盘和发出键盘消息啊? 在使用C#写的DLL在VC中使用的问题 一个奇怪的问题? 初学网络编程:为什么写的accept()不能阻塞? 这个窗口怎么没有最大化、最小化、关闭按钮?请指教,帮我看看是哪里不对,谢谢。 请帮我看看这个CRichEditCtrl为什么无法响应鼠标右键消息? 我如何根据一个类名来得到他的指针? 关于 StartDoc 函数 mfc状态栏显示 求助 驱动编程里边:IS_MY_CONTROL_DEVICE_OBJECT是什么?
CComPtr是通用智能指针模板类,通常用于对任意接口的封装。
_ApplicationPtr是从_com_ptr_t派生的,这也是一个模板类,跟CComPtr差别不大,但它做了更多的封装,编译器导入类型库时都用它作为接口封装工具,能作为返回值类型。
如果仔细看他们的源码,可以同时使用。
_com_ptr_t其名字空间根据跟你import的方式