王朝百科
分享
 
 
 

COleLinkingDoc

王朝百科·作者佚名  2010-09-07  
宽屏版  字体: |||超大  

COleLinkingDoc 类是OLE容器文档的基类,它支持链接到它们所包含的嵌入项。一个支持链接到嵌入项的容器应用程序被称为“链接容器”。示例应用程序OCLIENT就是一个链接容器的例子。

当一个链接项的源是另一个文档的嵌入项时,则为了使嵌入项可以编辑,那个包容文档必须被载入。由于这个原因,当用户想要编辑链接项的源时,容器程序就必须能够由另一个容器应用程序启动。你的应用程序也必须使用COleTemplateServer类以使它在被其它的应用程序启动时能够创建文档。

为了使你的容器应用程序成为一个链接容器,请从COleLinkingDoc派生出你的文档类,而不是从COleDocument派生。同处理其它任何OLE容器程序一样,应用程序必须将自己的类设计为可存储应用程序的本地数据以及嵌入或链接项。而且,你必须为保存你的本地数据设计数据结构。如果你为你的应用程序的本地数据定义了一个CDocItem派生类,你就可以使用由COleDocument定义的界面来保存你的本地数据以及OLE数据。

为了使你的应用程序能够被另一个容器程序启动,请定义一个COleTemplateServer对象作为你的应用程序的CWinApp派生类的成员。

class COleClientApp : public CWinApp

{

// ...

protected:

COleTemplateServer m_server;

// ...

};

在你的CWinApp派生类的成员函数InitInstance中,创建一个文档模板并指定你的COleLinkingDoc派生类为一个文档类:

// CMainDoc is derived from COleLinkingDoc

CMultiDocTemplate* pDocTemplate = new CMultiDocTemplate( IDR_OCLIENTTYPE,

RUNTIME_CLASS(CMainDoc),

RUNTIME_CLASS(CSplitFrame),

RUNTIME_CLASS(CMainView)

);

pDocTemplate->SetContainerInfo( IDR_OCLIENTTYPE_CNTR_IP);

AddDocTemplate(pDocTemplate);

通过调用COleTemplateServer对象的ConnectTemplate成员函数,将此COleTemplateServer对象连接到你的文档模板,并通过调用COleTemplateServer::RegisterAll函数向OLE系统注册所有的类对象。

m_server.ConnectTemplate(clsid, pDocTemplate, FALSE);

COleTemplateServer::RegisterAll();

CWinApp派生类的定义和InitInstance函数的示例,请参见MFC示例OCLIENT中的OCLIENT.H和OCLIENT.CPP。

如果要获取有关使用COleLinkingDoc的更多信息,请参见“Visual C++程序员指南”一书中的文章“容器:实现一个容器”。

#include <afxole.h>

请参阅:CDocTemplate

COleLinkingDoc类成员

构造COleLinkingDoc构造一个COleLinkingDoc对象

操作Register向OLE系统DLL注册此文档Revoke撤消文档的注册

可重载OnFindEmbeddedItem查找指定的嵌入项OnGetLinkedItem查找指定的链接项

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有