次の方法で共有


COleServerDoc クラス

OLE サーバー ドキュメントの基本クラスです。

class AFX_NOVTABLE COleServerDoc : public COleLinkingDoc

解説

サーバー ドキュメントは COleServerItem オブジェクトを持つことができます。このオブジェクトは、埋め込みアイテムやリンク アイテムに対するサーバー インターフェイスを表します。 埋め込みアイテムを編集するためにコンテナー アプリケーションからサーバー アプリケーションを起動すると、アイテムはそれ自身のサーバー ドキュメントとして読み込まれます。COleServerDoc オブジェクトには、ドキュメント全体を構成する 1 つの COleServerItem オブジェクトがあります。 サーバー アプリケーションがリンク アイテムを編集するためにコンテナー アプリケーションから起動されると、既存のドキュメントがディスクから読み込まれます。リンク アイテムであることを示すため、ドキュメント内の一部分が強調表示されます。

COleServerDoc オブジェクトは、COleClientItem クラスのアイテムを持つこともできます。 これにより、コンテナー サーバー アプリケーションを作成できるようになります。 フレームワークには、COleServerItem オブジェクトのサービス中でも、COleClientItem アイテムを正しく格納する機能が用意されています。

サーバー アプリケーションがリンクをサポートしていないときは、サーバー ドキュメントには常に 1 つのサーバー アイテムしか持ちません。このアイテムは、埋め込みオブジェクト全体を 1 つのドキュメントとして表します。 サーバー アプリケーションがリンクをサポートしている場合、選択されたものがクリップボードにコピーされるたびに、サーバー アイテムを作成する必要があります。

COleServerDoc を使うには、このクラスから新たなクラスを派生し、OnGetEmbeddedItem メンバー関数を実装します。この関数は、サーバーが埋め込みアイテムをサポートできるようにします。 ドキュメント内にアイテムを実装するには、COleServerItem クラスから新たなクラスを派生し、OnGetEmbeddedItem でそのクラスのオブジェクトを返すようにします。

リンク アイテムをサポートするために、COleServerDocOnGetLinkedItem メンバー関数を用意しています。 既定の実装を使うことができます。または、ドキュメント アイテムを管理する独自の手段があれば、この関数をオーバーライドすることもできます。

アプリケーションがサポートするサーバー ドキュメントのタイプごとに、1 つの COleServerDoc の派生クラスを作成する必要があります。 たとえば、サーバー アプリケーションがワークシートとグラフをサポートする場合は、2 つの COleServerDoc の派生クラスが必要です。

サーバーの詳細についてを参照してください「サーバー:サーバーの実装.

必要条件

**ヘッダー:**afxole.h

参照

処理手順

HIERSVR サンプル:OLE のドラッグ アンド ドロップでのサーバー アプリケーションを示します

参照

COleLinkingDoc クラス

階層図

COleDocument クラス

COleLinkingDoc クラス

COleTemplateServer クラス

その他の技術情報

COleServerDoc のメンバー