COM インターフェイスの作成
更新 : 2007 年 11 月
Visual C++ には、COM オブジェクトとオートメーション クラスのための COM インターフェイス定義と COM ディスパッチ インターフェイス定義を使用する、プロジェクト作成用のウィザードとテンプレートが用意されています。
これらのウィザードを使用して、以下の 3 つの一般的なタスクを実行できます。
-
MFC アプリケーション ウィザードを使用して MFC プロジェクトを作成した後で、MFC に ATL サポートを追加 コード ウィザードを実行してプロジェクトに ATL サポートを追加します。このサポートの適用対象は、MFC の実行可能ファイルまたは DLL プロジェクトに追加された単純な COM オブジェクトだけです。これらの ATL オブジェクトには複数のインターフェイスが含まれることがあります。
-
MFC ActiveX コントロール ウィザードを開き、.idl ファイルで定義されたディスパッチ インターフェイスとコントロール クラスで定義されたイベント マップを持つ ActiveX コントロールを作成します。
-
ATL プロジェクト ウィザードおよび ATL コントロール ウィザードを使用して、ATL ActiveX コントロールを作成します。
また、ATL サポートを追加した MFC プロジェクトに ATL コントロールを追加することもできます。ATL サポートを MFC プロジェクトに追加していない状態で [クラスの追加] ダイアログ ボックスの [ATL コントロール] を選択すると、ATL サポートを MFC プロジェクトに追加するかどうかを確認するダイアログ ボックスが表示されます。
このウィザードは、プロジェクト クラスに IDL ソースと COM マップを生成します。
ATL プロジェクトを開くと、[クラスの追加] ダイアログ ボックスで、COM インターフェイスをプロジェクトに追加するほかのウィザードとテンプレートを選択できます。以下のウィザードを使用すると、オブジェクトに 1 つ以上のインターフェイスを設定できます。
また、クラス ビューでオブジェクトのコントロール クラスを右クリックし、[インターフェイスの実装] をクリックすると、COM コントロールに新しいインターフェイスを実装できます。
メモ : |
---|
Visual Studio には、プロジェクトにインターフェイスを追加するウィザードはありません。ATL シンプル オブジェクト ウィザードを使用してシンプル オブジェクトを追加することで、ATL プロジェクトにインターフェイスを追加したり、MFC プロジェクトに ATL サポートを追加したりできます。または、プロジェクトの .idl ファイルを開き、次のように入力してインターフェイスを作成します。 |
interface IMyInterface {
};
詳細については、「インターフェイスの実装」および「ATL プロジェクトへのオブジェクトとコントロールの追加」を参照してください。
Visual C++ には、プロジェクトに対して定義した COM インターフェイスを編集および表示するいくつかの方法があります。クラス ビュー には、C++ プロジェクトの .idl ファイルで定義されているインターフェイスまたはディスパッチ インターフェイスのアイコンが表示されます。
ATL ベースの COM オブジェクト クラスの場合、クラス ビューには ATL クラスの COM マップが読み込まれ、ATL クラスと ATL クラスが実装する各インターフェイスとの関係が表示されます。
クラス ビューとそのショートカット メニューでは、以下の方法でインターフェイスを処理できます。
ATL オブジェクトを MFC ベースのアプリケーションに追加する。
メソッド、プロパティ、およびイベントを追加する。
アイテムをダブルクリックして、項目のインターフェイス コードに直接移動する。