ATL プロジェクトでの新しいインターフェイスの追加

オブジェクトまたはコントロールにインターフェイスを追加する場合は、そのインターフェイスのメソッドごとにスタブアウト関数を作成します。 オブジェクトまたはコントロールでは、既存のタイプ ライブラリに現時点存在しているインターフェイスのみを追加できます。 また、インターフェイスを追加するクラスでは、BEGIN_COM_MAP マクロを実装する必要があります。または、プロジェクトに属性が設定されている場合は、coclass 属性が含まれている必要があります。

新しいインターフェイスをコントロールに追加するには、手動で追加するか、クラス ビューのコード ウィザードを使用して追加するという 2 つの方法があります。

クラス ビューでコード ウィザードを使用してインターフェイスを既存のオブジェクトまたはコントロールに追加するには

  1. クラス ビューで、コントロールのクラス名を右クリックします。 たとえば、フル コントロールや複合コントロール、またはヘッダー ファイルに BEGIN_COM_MAP マクロを実装するその他のコントロール クラスなどです。

  2. ショートカット メニューの [追加] をクリックし、[インターフェイスの実装] をクリックします。

  3. [インターフェイス実装ウィザード] で実装するインターフェイスを選択します。 使用可能な typelib にインターフェイスが存在しない場合は、手動で .idl ファイルに追加する必要があります。

新しいインターフェイスを手動で追加するには

  1. 新しいインターフェイスの定義を .idl ファイルに追加します。

  2. インターフェイスからオブジェクトまたはコントロールを派生させます。

  3. インターフェイスの新しい COM_INTERFACE_ENTRY を作成します。または、プロジェクトに属性が設定されている場合は、coclass 属性を追加します。

  4. インターフェイスでメソッドを実装します。

関連項目

ATL プロジェクト ウィザード
Visual Studio の C++ プロジェクトの種類
ATL および C ランタイム コードによるプログラミング
ATL COM オブジェクトの基礎
ATL プロジェクトの既定の構成