MFC COM
MFC のサブセットは COM をサポートするようにデザインされており、ATL (Active Template Library) の大部分は COM プログラミング用にデザインされています。 ここでは、MFC による COM のサポートについて説明します。
Active テクノロジー (ActiveX コントロール、Active ドキュメント コンテインメント、OLE など) は、ソフトウェア コンポーネントの開発言語に関係なく、コンポーネント オブジェクト モデル (COM: Component Object Model) を使ってネットワーク環境でのコンポーネント間通信を可能にする技術です。 Active テクノロジーで作成したアプリケーションは、デスクトップとインターネットの両方で実行できます。 詳細については、「COM の概要」または「The Component Object Model」を参照してください。
Active テクノロジーは、クライアント機能とサーバー機能の両方を備えています。次は、その機能の一例です。
Active ドキュメント コンテインメントは、MFC 4.2 以降でサポートされています。この技術を利用すると、Active ドキュメント (Microsoft Excel や Word ファイルなど) を表示したり、ドキュメントのネイティブ アプリケーションのインターフェイス全体を Active ドキュメント コンテナー (Microsoft Office バインダーや Microsoft Internet Explorer など) のクライアント領域全体に表示したりできます。 Active ドキュメント サーバーがドキュメントを提供しているとき、コンテナーはクライアントとして動作します。 インターネット アプリケーションで Active ドキュメントを使用する方法の詳細については、「インターネット上の Active ドキュメント」を参照してください。
ActiveX コントロールは、Web サイトなどのコンテナーで使用できるインタラクティブなオブジェクトです。 ActiveX コントロールの詳細については、以下のトピックを参照してください。
Active スクリプトは、ActiveX コントロールの全体的な動作をブラウザーやサーバーから制御します。 Active スクリプトの詳細については、「インターネット上の Active テクノロジ」を参照してください。
オートメーション (旧 OLE オートメーション) を利用するアプリケーションは、ほかのアプリケーションで実装されているオブジェクトを操作できます。または、ほかのアプリケーションから操作できるように、オブジェクトを "公開" できます。
オートメーション オブジェクトはローカル オブジェクト、またはネットワークを経由して別のコンピューターからアクセス可能なリモート オブジェクトのどちらかです。 OLE オブジェクトと COM オブジェクトは、どちらもオートメーションを利用できます。
ここでは、MFC を使って COM コンポーネントを作成する方法についても説明します。「コネクション ポイント」を参照してください。
従来の OLE と新しく導入された Active テクノロジーの違いについては、OLE についてのトピックを参照してください。
また、サポート技術情報の「[VC] COM を使用した処理に長時間を要するとき [サーバー使用中] ダイアログ ボックスが表示されないようにする方法 (JP248019 )」も参照してください。