共用方式為


COleLinkingDoc 類別

支援連結與內嵌項目的 OLE 容器文件的基底類別及內容。

class COleLinkingDoc : public COleDocument

成員

zz0aa7az.collapse_all(zh-tw,VS.110).gif公用建構函式

名稱

描述

COleLinkingDoc::COleLinkingDoc

建構 COleLinkingDoc 物件。

zz0aa7az.collapse_all(zh-tw,VS.110).gif公用方法

名稱

描述

COleLinkingDoc::Register

註冊具有 OLE 系統 DLL 的文件。

COleLinkingDoc::Revoke

移除文件的註冊。

zz0aa7az.collapse_all(zh-tw,VS.110).gif受保護的方法

名稱

描述

COleLinkingDoc::OnFindEmbeddedItem

尋找指定的內嵌項目。

COleLinkingDoc::OnGetLinkedItem

尋找指定之連接的項目。

備註

支援連結與內嵌項目稱為「連結容器的容器應用程式」。OCLIENT 範例應用程式是連結容器的範例。

當連結之項目的來源是在另一份文件中的內嵌項目,必須載入這個所包含的檔案才能編輯內嵌項目。因此,在中,當使用者想要編輯連結之項目的來源時,連結容器必須能夠由另一個容器應用程式啟動。您的應用程式也必須使用 COleTemplateServer 類別,以建立文件,同時啟動的方式。

若要將您的容器連結容器,從 COleLinkingDoc 衍生您的文件類別而不是 COleDocument。與其他 OLE 容器,您必須自行設計儲存應用程式的原生資料和內嵌或連結的項目類別。此外,您也必須設計儲存您的原生資料結構。如果您定義 CDocItem-應用程式的原生資料 (Native Data) 的衍生類別,您可以使用 COleDocument 定義介面儲存原生資料以及您可用的資料。

若要讓您的應用程式都是由其他容器所啟動的方式,請宣告 COleTemplateServer 物件做為應用程式的 CWinApp成員的衍生類別:

class COleContainerApp : public CWinApp
{
protected:
   COleTemplateServer m_server;
   // remainder of class declaration ommitted

在您的 CWinAppInitInstance 成員函式的衍生類別,建立文件範本並指定您的 COleLinkingDoc衍生類別,文件類別:

   // CMyLinkDoc is derived from COleLinkingDoc
   CMultiDocTemplate* pDocTemplate = new CMultiDocTemplate(IDR_LINKDOCTYPE,
      RUNTIME_CLASS(CMyLinkDoc),
      RUNTIME_CLASS(CChildFrame),
      RUNTIME_CLASS(CMyLinkView));
    if (!pDocTemplate)
        return FALSE;
   pDocTemplate->SetContainerInfo(IDR_OLECONTTYPE_CNTR_IP);
   AddDocTemplate(pDocTemplate);

藉由呼叫物件的 ConnectTemplate 成員函式連接至您的文件範本的 COleTemplateServer 物件,並呼叫 COleTemplateServer::RegisterAll註冊具有 OLE 系統中所有類別的物件:

m_server.ConnectTemplate(clsid, pDocTemplate, FALSE);
COleTemplateServer::RegisterAll();

如需範例 CWinApp衍生類別定義和 InitInstance 生效,請參閱 OCLIENT.H 和 OCLIENT.CPP 在 MFC 範例 OCLIENT

如需使用 COleLinkingDoc的相關資訊,請參閱 Microsoft 知識庫文件 容器:實作容器容器:進階功能

繼承階層架構

CObject

CCmdTarget

CDocument

COleDocument

COleLinkingDoc

需求

Header: afxole.h

請參閱

參考

COleDocument 類別

階層架構圖

CDocTemplate 類別

概念

MFC 範例 OCLIENT