摘要: 1、概述 COM提供了应用之间数据交换的标准方案,称为统一数据传输(UDT,uniform data transfer)。统一数据传输技术建立在结构化存储技术的基础之上,它通过一个“数据对象”来表达要传输的数据信息,因此,统一数据传输技术的核心在 于数据对象的定义和实现。剪贴板和拖-放是统一数据传输的两个典型应用。2、数据交换标准 早期的OLE1.0版本使用DDE(Dynamic Data Exchange,动态数据交换)作为数据交换标准,但DDE使用的格式比较简单,并且只能用全局内存作为传输介质,所以传输的效率和功能都受限制。 OLE2.0版本引入了COM作为其基本的结构模型,使用COM提供 阅读全文
posted @ 2011-07-18 10:34 子超 阅读(553) 评论(0) 推荐(0) 编辑
摘要: 使用范例: #include <atlconv.h> void fun() { USES_CONVERSION;// 只需要调用一次,就可以在函数中进行多次转换 LPCTSTR lp = OLE2CT( L"Hello,你好") ); ... ... ... ... // 不用显式释放 lp 的内存,因为 // 由于 ATL 转换宏使用栈作为临时空间,函数结束后会自动释放栈空间。 } 使用 ATL 转换宏,由于不用释放临时空间,所以使用起来非常方便。但是考虑到栈空间的尺寸(VC 默认2M),使用时要注意几点: 1、只适合于进行短字 阅读全文
posted @ 2011-07-18 10:33 子超 阅读(174) 评论(0) 推荐(0) 编辑
摘要: http://www.codeguru.com/Cpp/COM-Tech/activex/tutorials/article.php/c5567/IntroductionInterfacesStep 1:Create the IDL fileStep 2:Generating the type libraryStep 3:Derive from IAddStep 4:Implement the methods of IAddStep 5:Implementing IUnkownStep 6:FactoryStep 7:Implementing the methods of IClassFact 阅读全文
posted @ 2011-07-18 10:30 子超 阅读(172) 评论(0) 推荐(0) 编辑
摘要: http://blog.csdn.net/hotsoftg/article/details/1637333这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个简单的概念,但这种分离确实使得STL变得非常通用。例如,由于STL的sort()函数是完全通用的,你可以用它来操作几乎任何数据集合, 阅读全文
posted @ 2011-07-18 10:18 子超 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 在win7 下面调用ActiveX出现如题错误。xp下测试正常。编译环境: VS2008 编程语言:CSharp 系统版本:Windows7 OCX控件:无窗口的OCX控件根据微软官方的说法,导致这个错误是由于Windows的保护机制,在编译后的exe的PE头部,有一个DEP(Data Execution Prevention)的功能。需要将这个功能关闭,就能正常运行了,试了试成功了。 数据执行保护 (DEP) 是一种Windows安全机制,从Windows版本顺序上看是从Windows XP SP2开始引入,通过监视程序以确保它们使用的系统内存是安全的,帮助防止操作系统受到病毒和其他安全威胁 阅读全文
posted @ 2011-07-14 15:45 子超 阅读(4775) 评论(2) 推荐(0) 编辑