CRichEditCtrl实现MSN/QQ动画表情
日期:2008年3月30日 作者: 查看:[大字体 中字体 小字体]-
14 sc = ::CreateILockBytesOnHGlobal(NULL, TRUE, &lpLockBytes);
15 if (sc != S_OK)
16 AfxThrowOleException(sc);
17 ASSERT(lpLockBytes != NULL);
18
19 //use lockbytes to create storage
20 sc = ::StgCreateDocfileOnILockBytes(lpLockBytes,
21 STGM_SHARE_EXCLUSIVESTGM_CREATESTGM_READWRITE, 0, &m_lpStorage);
22 if (sc != S_OK)
23 {
24 VERIFY(lpLockBytes->Release() == 0);
25 lpLockBytes = NULL;
26 AfxThrowOleException(sc);
27 }
28 ASSERT(m_lpStorage != NULL);
29
30 //get the ClientSite of the very RichEditCtrl
31 GetIRichEditOle()->GetClientSite(&m_lpClientSite);
32 ASSERT(m_lpClientSite != NULL);
33
34 try
35 {
36 //Initlize COM interface
37 hr = ::CoInitializeEx( NULL, COINIT_APARTMENTTHREADED );
38 if( FAILED(hr) )
39 _com_issue_error(hr);
40
41 //Get GifAnimator object
42 //here, I used a smart point, so I do not need to free it
43 hr = m_lpAnimator.CreateInstance(CLSID_GifAnimator);
44 if( FAILED(hr) )
45 _com_issue_error(hr);
46 //COM operation need BSTR, so get a BSTR
47 BSTR path = strPicPath.AllocSysString();
48
49 //Load the gif
50 hr = m_lpAnimator->LoadFromFile(path);
51 if( FAILED(hr) )
52 _com_issue_error(hr);
53
54 TRACE0( m_lpAnimator->GetFilePath() );
55
56 //get the IOleObject
57 hr = m_lpAnimator.QueryInterface(IID_IOleObject, (void**)&m_lpObject);
58 if( FAILED(hr) )
59 _com_issue_error(hr);
60
61 //Set it 2 b inserted
62 OleSetContainedObject(m_lpObject, TRUE);
63
64 //2 insert in 2 richedit, you need a struct of REOBJECT
65 REOBJECT reobject;
66 ZeroMemory(&reobject, sizeof(REOBJECT));
67
68 reobject.cbStruct = sizeof(REOBJECT);
69 CLSID clsid;
70 sc = m_lpObject->GetUserClassID(&clsid); - 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页
-
- CRichEditCtrl实现MSN/QQ动画表情 相关文章:
- ·Fireworks教程 液体金属表面特效制作
- ·多个CSS样式表争夺特定选择符的控制权
- ·HTML表格标记:行的水平对齐属性ALIGN
- ·纯CSS制作的新闻网站中的文章列表
- ·Illustrator绘制精美三维图表实例
- ·Excel表格页码设置打印输出更直观
- ·经典:交换机故障检测检查表
- ·QQ会员成长体系介绍及成长值换算参照表
- ·sqlldr加载数据到不同表的问题
- ·下载:MSN微软官方圣诞表情包
- CRichEditCtrl实现MSN/QQ动画表情 相关软件
- ·火影忍者必杀技表演秀
- ·《文明4》官方科技树图表
- ·图片欣赏-世界名表欣赏
- ·万用表应用技巧
- ·历代CPU最全明细参数表
- ·心理自测表
- ·中国地方菜系及代表菜
- ·注册表结构
- ·用图表说话
- ·化学元素周期表
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
下一篇:C/C++头文件一览
精品推荐
热点TOP10
- ·socket编程原理
- ·将程序从托管扩展 C++ 迁移到 C++/CLI(1)
- ·Beej的网络socket编程指南
- ·飞机订票系统设计
- ·用c#监控网络流量
- ·具体而微的绘图程式-c++ Borland 入门
- ·C语言库函数 (D类字母)
- ·C#使用WIN32API来遍历文件和目录
- ·CRichEditCtrl实现MSN/QQ动画表情
- ·使用 C# 编程对 RTF 文档进行操作
- ·学生成绩管理系统实习
- ·corba核心规范
- ·再现C#导出Excel源码
- ·C/C++笔试、面试题目大汇总
- ·C语言库函数(S类字母) - 3
- ·使用C#来开发.NET CF 蓝牙通信模块
- ·支付宝Payto接口的C#.net实现方法
- ·TCPIP完整的一套基础介绍
- ·C++面向对象编程入门:构造函数与析构函数
- ·简单的画笔
特别推荐
- ·Beej的网络socket编程指南
- ·socket编程原理
- ·C语言库函数 (D类字母)
- ·C#程序开发中的常用函数汇总
- ·C#数据库操作的三种经典用法
- ·C/C++笔试、面试题目大汇总
- ·C语言的常用库函数使用方法分析及用途
- ·在C语言中如何处理时间和日期
- ·C++设计模式之Singleton
- ·VC++动态链接库编程之MFC扩展 DLL
- ·TCP/IP网络重复型服务器通信软件的设计
- ·DirectX游戏开发入门
- ·经典与现代的结合:在MFC中集成RAD .NET框架
- ·Windows API-GDI入门基础知识详解(2)
- ·Visual C++ 入门精解
- ·C#基础概念二十五问
- ·用C#实现pdf文件的完整性验证
- ·成为嵌入式程序员应知道的0x10个问题
- ·TCP/IP编程实现远程文件传输
- ·几个C#编程的小技巧
