
COM
文章平均质量分 82
snaill
请用一段话来描述您自己,如性格、爱好、生活态度、工作情况、受教育状况等。让大家更了解你
展开
-
编写可复用性更好的C++代码——Band对象和COMToys(七)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z转载 2006-03-29 13:40:00 · 1787 阅读 · 0 评论 -
ATL布幔之下的秘密(1)
作者:Zeeshan Amjad译者:李马 (home.nuc.edu.cn/~titilima ) 原文出处: http://www.codeproject.com/atl/atl_underthehood_.asp 介绍 在本系列的教程中,我要讨论一些ATL的内部工作方式以及它所使用的技术。 在讨论的开始,让我们先看看一个程序的内存分布。首先,编写一个简单的程序,它没有任何的数转载 2006-03-29 13:09:00 · 1622 阅读 · 5 评论 -
COM组件设计与应用8 - 实现多接口
下载源代码一、前言 从第五回开始到第七回,咱们用 ATL 写了一个简单的 COM 组件,之所以说简单,是因为在组件中,只实现了一个自定义(custom)的接口 IFun。当然如果想偷懒的话,我们可以把 200 个函数都加到这一个接口中, 果真如此的话,恐怕就没有人喜欢使用我们这个组件了。一个组件既然可以提供多个接口,那么我们在设计的时候,就应该按照函数的功能进行分类,把不同功能分类的函数转载 2006-03-29 11:19:00 · 1577 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(九)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z转载 2006-03-29 13:42:00 · 2435 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(八)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z转载 2006-03-29 13:41:00 · 1933 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(三)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z转载 2006-03-29 13:34:00 · 2007 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(二)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.转载 2006-03-29 13:32:00 · 2220 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(一)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.转载 2006-03-29 13:28:00 · 2728 阅读 · 0 评论 -
Office2000下内部COM插件的编程实现
译者:徐景周下载示例源代码简介你也许曾在Office2000下的Word2000、Access2000、Excel2000、PowerPoint2000等软件中的工具条或菜单条资源中,看到一些其它软件加入的新的自定义工具条按钮或菜单条,当点击它们时,会有其不同的响应发生。下面,让我们也来实现这些功能,需要说明的是,在这里我们不用VB/VBA来实现它,而是用VC6中所带ATL(活动模板库)3.0转载 2006-03-29 13:22:00 · 1687 阅读 · 0 评论 -
理解COM编程中的“种类”(Category)概念
编译/hangwire 下载范例源代码 问题:转载 2006-03-29 13:16:00 · 2550 阅读 · 0 评论 -
ATL布幔之下的秘密(5)
作者:Zeeshan Amjad译者:李马 (home.nuc.edu.cn/~titilima ) 原文出处: http://www.codeproject.com/atl/atl_underthehood_5.asp 下载本文配套源代码介绍 很多人认为ATL只是用来编写COM组件的,其实你也可以使用ATL中的窗口类来创建基于窗口的应用程序。虽然你可以将基于MFC的程序转换为ATL,但转载 2006-03-29 13:13:00 · 1414 阅读 · 0 评论 -
ATL布幔之下的秘密(2)
作者:Zeeshan Amjad译者:李马 (home.nuc.edu.cn/~titilima ) 原文出处: http://www.codeproject.com/atl/atl_underthehood_2.asp 介绍 在本系列的教程中,我要讨论一些ATL的内部工作方式以及它所使用的技术,这是本系列的第二篇文章。 现在让我们来探究一些虚函数背后更加有趣的资料。为了和上文保持转载 2006-03-29 13:10:00 · 1387 阅读 · 0 评论 -
让你的程序也能执行脚本
下载源代码 VBScript(JScript)是应用广泛,简单易学的脚本语言。使用VBScript(JScript)调用COM组件则更是容易。那么,如果在你的程序中也能够执行脚本,则在简化程序设计的基础上,还会极大地提升软件的功能。为了方便大家使用这个功能,我写了一个具有自动化(Automation/IDispatch)功能的EXE包装程序来代理调用脚本执行。这个包装程序接口只有2个函数,说明如转载 2006-03-29 13:14:00 · 3101 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(五)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z转载 2006-03-29 13:36:00 · 2186 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(四)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z原创 2006-03-29 13:36:00 · 2245 阅读 · 0 评论 -
VC++内部COM插件的编程实现
作者:李晓飞下载本文示例工程 一、闲聊首先,在这里向前段时间没来得及回复你们问题的朋友们说声对不起了,这段时间工作实在太忙,我快倒!哈哈!好了,让我们转入正题,今天要谈的话题是COM,稍微深入一点,不知道大家用过C++Test或者Visual Assistant(可到VC知识库工具栏目下载)之类的软件没有,它们都有个非常引人注目的功能,那就是把它们自身嵌入到VC开发环境中去。这个功能让我痴迷不转载 2006-03-29 13:23:00 · 2709 阅读 · 0 评论 -
Word2000/XP中内部COM插件的编程实现
编译:徐景周下载本文示例源代码 简介Office2000/XP中Word下的内部COM插件的实现方法和前面我的文章《 Office2000下内部COM插件的编程实现》中介绍的示例Outlook2000下内部COM插件的实现方法与步骤基本相同,在这里,我想不用再重复哆嗦大部分前面文章里已经讲过的内容了,只将重点放在它们间实现的不同点上,有兴趣的朋友可以参看前面这篇文章,然后再看这篇文章一定会事半转载 2006-03-29 13:21:00 · 1697 阅读 · 0 评论 -
Excel2000/XP和PowerPoint2000/XP内部COM插件的实现
作者:徐景周下载示例源代码一:EXCEL内部插件下载示例源代码二:PowerPoint内部插件一、简介Excel2000和PowerPoint2000下内部COM插件的编程实现这篇文章,实际上是 和二篇文章的续篇。采用上篇文章中写作风格,不再重复哆嗦大部分前面文章里已经讲过的内容了,只将重点放在它们间实现的不同点上,有兴趣的朋友可以参看前面二篇文章,然后再看这篇文章及示例源码一定会倍感轻松。本转载 2006-03-29 13:20:00 · 1548 阅读 · 0 评论 -
COM组件设计与应用15 - 连接点(vc6.0)
STDMETHODIMP CDispConnect::Add(long n1, long n2){ long nVal = n1 + n2; Fire_Result( nVal ); // 调用IDE帮我们生成的代理函数代码,发出事件 return S_OK;}15、修正 IDE 产生的代码中的错误。你不用死记硬背错误点,只要编译一下就会报出错误了。一般 VC原创 2006-03-29 12:10:00 · 1845 阅读 · 0 评论 -
COM组件设计与应用12 - 错误与异常处理
E_INVALIDARG 0x80070057 参数错误 E_OUTOFMEMORY 0x8007000E 内存错误转载 2006-03-29 12:04:00 · 1607 阅读 · 0 评论 -
COM组件设计与应用10 - IDispatch 接口 for vc.net
下载源代码 一、前言 终于写到了第十回,我也一直期盼着写这回的内容耶,为啥呢?因为自动化(automation)是非常常用、非常有用、非常精彩的一个 COM 功能。由于 WORD、EXCEL 等 OFFICE 软件提供了“宏”的功能,就连我们使用的VC开发环境也提供了“宏”功能,更由于 HTML、ASP、JSP 等都要依靠脚本(Script)的支持,更体现出了自动化接口的重要性。原创 2006-03-29 11:27:00 · 1560 阅读 · 0 评论 -
编写可复用性更好的C++代码——Band对象和COMToys(六)
编译/赵湘宁原著:Paul Dilascia MSJ November 1999 & December 1999关键字:Bands 对象,Desk Bands,Info/Comm Bands,Explorer Bar,Tool Bands。 本文假设你熟悉C++,COM,IE。下载本文源代码: MyBands.zip (128KB) TestEditSrch.z原创 2006-03-29 13:39:00 · 3058 阅读 · 0 评论 -
ATL开发技巧之一(集合对象的实现)
作者:贾闻强 通常对象集合时要用到枚举器,但枚举器的实现主要是为了集合对象的访问控制,我们可以用CComEnumOnSTL模板去定义自己的枚举器,这样会涉及复杂的复制策略定义及集合方法实现的定义。 假如我们不使用枚举器,而仅使用接口数组,集合对象会有一个相对简单许多的实现,本文将探讨这种方法的实现并提供完整转载 2006-03-29 13:24:00 · 1889 阅读 · 0 评论 -
ATL布幔之下的秘密(4)
作者:Zeeshan Amjad译者:李马 (home.nuc.edu.cn/~titilima ) 原文出处: http://www.codeproject.com/atl/atl_underthehood_4.asp 介绍 到现在为止,我们还没有讨论过任何有关汇编语言的东西。但是如果我们真的要了解ATL底层内幕的话,就不能回避这一话题,因为ATL使用了一些底层的技术以及一些内联汇编语转载 2006-03-29 13:12:00 · 1213 阅读 · 0 评论 -
ATL布幔之下的秘密(3)
作者:Zeeshan Amjad译者:李马 (home.nuc.edu.cn/~titilima ) 原文出处: http://www.codeproject.com/atl/atl_underthehood_3.asp 介绍 如果你是个模板的高手,你就可以将ATL的学习作为一种享受。在这一节中,我将要尝试解释一些ATL使用的模板技术。我不能保证你读完本节后能成为一个模板高手,只能是尽我转载 2006-03-29 13:11:00 · 1443 阅读 · 0 评论 -
超酷代码:来自 COM 经验的八个教训
原著:Jeff Prosise 本文转载自微软中国社区:http://www.microsoft.com/china/MSDN/library/windev/COMponentdev/CDwickedtoc.mspx发布日期:5/20/2004更新日期:5/20/2004原文出处:Wi原创 2006-03-13 17:53:00 · 1730 阅读 · 1 评论 -
COM插件模型浅谈
作者:杜春辉下载源代码一、关于普通DLL插件的实现VC知识库里已有文章介绍,但在很多大型的软件中(如ArcGis、Office)中都不是采用这种方法,基于COM的插件在当今的大型软件中应用的更广泛。二、实现插件离不开三个要素 插件管理器(即:要使用这些插件的主程) 插件基本接口(即:插件与管理器都认可的接口标准),在DLL插件中这个要素通常是一个标准的C++头文件,转载 2006-03-13 17:52:00 · 2357 阅读 · 0 评论 -
使用VC++ ATL实现Office的COM插件
作者:useresu下载源代码摘要 本文介绍了一种使用VC++ ATL(Active Template Library),利用IDTExtensibility2接口,为Microsoft Word加入功能简单的COM插件(addin),加入工具栏按钮和菜单等可视部件,并为其加入响应事件的方法,并在最后简单说明了实现与Office宏混合编程的方法。 说到Office相关的编程,大家首先想到的可能转载 2006-03-13 17:50:00 · 4725 阅读 · 1 评论 -
用ATL开发复合控件
作者:王雪松下载源代码 本文讲述了如何用ATL建立复合控件,以及如何响应连接点事件。考虑到代码很简单,程序中没有加注释,如有不清楚请参看MSDN,代码仓促中完成,不免有疏漏,见谅。声明:本文仅适合初级中的初级读者。步骤一:建立ATL项目,取名为AtlSample步骤二:选择默认选项,点击Finish步骤三:插入复合控件,名称为AtlComp,选择支持错误信息,支持连接点。步骤四:在对话框模板转载 2006-03-13 17:48:00 · 2240 阅读 · 0 评论 -
COM组件接口继承的实现
作者:ZhengKui下载源代码讲解: 这是根据”Dr. GUI and ATL” 的文章自己做的例子程序,主要是在原有接口上继承新的接口,这样在保留原接口的基础上可以扩展新的功能.功能介绍:1.创建Calculate组件,添加IFun接口(注意:本例我们在Attributes中我们选择Apartment,Custom,Yes).在IFun接口中添加函数Add实现两数相加的功能(参数为[in]转载 2006-03-13 16:41:00 · 1747 阅读 · 0 评论 -
理解 COM 套间
简序 Don Box 在《COM 本质论》中说,对接口,类对象和套间有了彻底的理解,那么使用COM,没有翻不过去的山头。如果你对C++有深入的理解,那么《COM本质论》中对接口和类对象的阐述很清晰,理解并不困难。但套间是一个比较抽象的概念,而书上对这部分只是理论的叙述,没有提供具体的例子,理解起来就更困难了。在此我把自己找到的一些例子和自己的理解总结以下,以期给初学者提供一些入门的方法。闲话转载 2006-03-13 16:39:00 · 2141 阅读 · 3 评论 -
Visual C++ 6 Add-in编程实例
作者:hao.yu下载本文示例代码最近我用了一些时间来学习如何编写用于Visual C++ 6.0的Add-In。这是一个有趣的问题,不过总的来说,有关这方面的文档和样例程序仍然比较缺乏(中文的更加罕见)。因此我决定把自己学习过程中的一些心得写出来,和大家共享。 一、有关Visual C++ Add-In的常见问题(1)什么是Visual C++ Add-In?它有什么用途?总转载 2006-03-13 17:59:00 · 1887 阅读 · 0 评论 -
连接 COM 与 .NET 的桥梁
预备知识作者:caeser2本文代码使用ISO C++和.net v1.1框架(VS 2003)编写,但其原理适合所有支持.net框架的语言 一、前言 由于传统的COM技术使用静态的非托管编程,而.net使用动态的托管编程,所以这个题目本质上讨论的是托管与非托管代码之间的互操作中的一个特例。目前的 .net v2.0 提供以下 三种互操作: 模块级别的P/Invoke方法这种操作转载 2006-03-13 16:37:00 · 1513 阅读 · 0 评论 -
编写、加载和存取插件程序(Plug-Ins)
原著:Paul DiLascia翻译:NorthTibet 下载源代码:CAtWork0510.exe (273KB)原文出处:Writing, Loading, and Accessing Plug-Ins 在 2005 年一月刊的 MSDN 杂志文章中转载 2006-03-13 16:33:00 · 2159 阅读 · 0 评论 -
COM 组件设计与应用7 - 编译、注册、调用
一、前言 上两回中,咱们用 ATL 写了第一个 COM 组件程序,这回中,主要介绍编译、注册和调用方法。示例程序你已经下载了吗?如果还没有下载,vc6.0 的用户点这里,vc.net 的用户点这里。二、关于编译 2-1 最小依赖 “最小依赖”,表示编译器会把 ATL 中必须使用的一些函数静态连接到目标程序中。这样目标文件尺寸会稍大,但独立性更强,安装方便;反之系统执行的时候需要有 ATL.D转载 2006-03-15 18:03:00 · 1756 阅读 · 1 评论 -
COM技术初探1-3
COM技术初探(一)作者: venture 下载源代码 目录 一. COM是一个更好的 C++转载 2006-03-15 17:05:00 · 3398 阅读 · 1 评论 -
COM组件设计与应用2 - GUID 和 接口
typedef struct _GUID { DWORD Data1; // 随机数 WORD Data2; // 和时间相关 WORD Data3; // 和时间相关 BYTE Data4[8]; // 和网卡MAC相关} GUID;typedef GUID CLSID; // 组件IDtypedef GUID IID; // 接口ID#de转载 2006-03-15 17:41:00 · 1825 阅读 · 0 评论 -
COM组件设计与应用16 - 连接点(vc.net)
STDMETHODIMP CDispConnect::Add(long n1, long n2){ long nVal = n1 + n2; Fire_Result( nVal ); // 调用IDE帮我们生成的代理函数代码,发出事件 return S_OK;}四、实现调用者(一)1、建立一个 MFC 项目。示例程序中的名称叫 Use。2、按照咱们以前所学的知原创 2006-03-29 12:11:00 · 1691 阅读 · 0 评论 -
COM组件设计与应用14 - 事件和通知(vc.net)
通知方式 简单说明 评论 直接消息 PostMessage()PostThreadMessage() 向窗口或线程发个消息 你什么转载 2006-03-29 12:08:00 · 1312 阅读 · 0 评论 -
COM组件设计与应用13 - 事件和通知(VC6.0)
通知方式 简单说明 评论 直接消息 PostMessage()PostThreadMessage() 向窗口或线程发个消息 你什么转载 2006-03-29 12:05:00 · 1258 阅读 · 1 评论