
COM
文章平均质量分 59
超级管理员9527
这个作者很懒,什么都没留下…
展开
-
从C++和COM角度理解“依赖注入”
从C++和COM角度理解“依赖注入”名词解释:依赖项产生问题:耦合解决方案:注册服务、注入依赖本质:几句话就说清楚一个高大上的概念,一个控制反转技术。所谓的。名词解释:依赖项依赖项(dependency):另一个对象依赖之。比如:class A{public:void fun() {…}};如果另外一个类需要调用A::fun,那么类A就是一个依赖项。某个类B可能会创建一个A对象a,并调用a.fun();class B : public A{public:void method()原创 2021-03-30 22:15:38 · 619 阅读 · 0 评论 -
COM线程模型-套间(新)
严重声明: [原]crybird如有转载请注明出处。 今天偶然看到,我10年前对COM的心得笔记,竟然有不止一人引用,倍感欣慰。于是,把现在的心得加以补充。 本故事纯属虚构,只想以轻松的心情理解COM,别无他意(对各方没有任何不友好、不尊重之意,谢谢理解)。【某外包公司的事故】背景,COM规范太复杂了,按规范编写服务组件和客户端调用,代码量太大,快没人用了。。。第一回~[主线程内...原创 2018-06-25 23:32:28 · 666 阅读 · 1 评论 -
无法主动调用线程函数怎么办?timer妙用(不太好理解)
场景: 做word插件,用户点击按钮后执行一个命令。 由于不能影响界面,所以要开一个线程,等完事后通知word。原创 2017-04-19 17:54:33 · 637 阅读 · 0 评论 -
关于TLB
一直没有用到,所以没怎么注意。今天用的时候,发现VC不能自动生成COM的TLB文件。在设置里没有找到合适的选项,按直觉可以自动生成才对。网上搜了个办法:VC的文件-打开-打开文件...,选中COM组件(DLL或者EXE),点击打开按钮旁边的下拉框,选打开方式...(资源),打开。打开文件后,是个树状的资源列表,选择TYPELIB,点击右键,选择导出菜原创 2016-03-11 10:57:58 · 969 阅读 · 0 评论 -
关于Word中InsertXML的说明(Word ML)
【前言】从Word2007刚出来的时候,就发现这个问题了,但是修改的不是很细致,也不深入。今天优化代码的时候(2013年11月),又研究了下这个问题,在我所查找到的资料中,只有这一个有参考性的帖子。【问题】wrod通过InsertXML的方法插入Word ML的时候,word2003和2007-2013的版本效果不一样。对于一个简单的Word ML来说,2007-2013的版本比w原创 2013-11-11 13:24:18 · 2463 阅读 · 0 评论 -
关于SAFEARRAY的,转载了篇文章,比较全
有个问题,64位COM组件调用32位COM组件(进程外)的时候:32位组件里引入_IDTExtensibility2接口,64调用的时候失败;如果不用引入的方法,而把接口函数写到IDL里,则调用成功。比较奇怪。(关键是接口函数有SAFEARRAY**类型的参数,让系统默认转就失败。返回的错误时加载DLL模块失败,其实是代理存根调用有异常,可能转SAFEARRAY的时候有转载 2013-06-27 15:25:34 · 12947 阅读 · 0 评论 -
64位word插件(ribbon界面)开发的几个问题
1.目标平台选x64(废话)2.64位COM组件可以调用32位COM组件,但只能调用进程外组件(.exe),所以要各种包装。(32调64的据说行,没测试)http://www.cnblogs.com/mazhenyu/archive/2007/06/28/798710.html3.IDispatch接口的入口必须通过插件接口,不能是_IDTExtensibility2,原创 2012-12-26 14:37:46 · 1779 阅读 · 1 评论 -
当心Invoke埋下的雷
【标签】dispatch error; invoke error; COM; 连接点; VTS_VARIANT;【报错提示】VS2010-0xC015000F 正在被停用的激活上下文不是最近激活的VS2012-0x00000001 处有未经处理的异常(在 a.exe 中): 0xC0000005: 执行位置 0x00000001 时发生访问冲突【应用场景】主程序原创 2012-09-21 09:40:18 · 4184 阅读 · 0 评论 -
老问题,新解法:关于去掉WebBrowser的边框和滚动条
关于去掉WebBrowser的边框和滚动条确实是个老问题了,网上的解决方法也是一坨一坨的,基本上比较一致。方法如下:1. 写网页的时候,设置body样式,这不是我们讨论的范围。2.OnDocumentComplete的时候修改body,等于对于方法1的补救,不是我们的原创 2011-08-30 15:54:11 · 8123 阅读 · 5 评论 -
如何从Internet Explorer_Server窗口句柄获得IHTMLDocument
今天用到了,从网上搜了个方法,关键代码如下:#include #pragma comment(lib, "OleAcc.lib") //hWnd:Internet Explorer_Server LRESULT lResult = 0; U原创 2011-08-02 11:00:30 · 3304 阅读 · 1 评论 -
用VS2008+ATL开发Gif的ActiveX控件的步骤
keywords:ATL,ActiveX,gif,多线程用VS2008+ATL开发显示Gif的ActiveX控件base:MSDN:开发语言-VS文档-VC++-参考信息-库参考-ATL-Concepts-ATL Tutorial1 创建解决方案创建一个空的解决方案,名称GifSolution。将来包含控件项目和测试项目。2 创建ATL项目解决方案视图-右击解决方案原创 2009-04-04 22:22:00 · 10087 阅读 · 6 评论 -
COM线程模型-套间
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE原创 2008-10-11 13:47:00 · 4001 阅读 · 5 评论