Share via


ATL コントロール ウィザード

ATL プロジェクト (または ATL をサポートする MFC プロジェクト) に ATL コントロールを挿入します。 このウィザードを使用すると、次の 3 つの種類のコントロールのいずれかを挿入できます。

  • 標準のコントロール

  • 複合コントロール

  • DHTML コントロール

また、最小限のコントロールを指定し、インターフェイスの一覧からインターフェイスを削除することもできます。これらのインターフェイスは、ほとんどのコンテナーで、既定で開かれるコントロールです。 コントロールでサポートされるインターフェイスは、このウィザードの [インターフェイス] ページで設定できます。

解説

このウィザードによって生成される登録スクリプトでは、その COM コンポーネントが HKEY_LOCAL_MACHINE ではなく HKEY_CURRENT_USER 下に登録されます。 この動作を変更するには、ATL ウィザードの [すべてのユーザーについてコンポーネントを登録] オプションを設定します。

名前

プロジェクトに追加するオブジェクト、インターフェイス、およびクラスの名前を指定します。 [短い名前] 以外のすべてのボックスは個別に変更できます。 [短い名前] のテキストを変更すると、このページ内にある他のすべてのボックスの名前に変更が反映されます。 COM セクションで [コクラス] の名前を変更すると、その変更は [種類] ボックスに反映されますが、[インターフェイス] の名前と [ProgID] は変更されません。 名前付けに関するこの動作は、コントロールを開発するときに、すべての名前を識別しやすくするために設計されています。

Note

[コクラス] は属性なしコントロールでのみ編集できます。 プロジェクトが属性付きである場合は、[コクラス] を編集できません。

C++

オブジェクトを実装するために作成される C++ クラスの情報を指定します。

  • 短い名前

    オブジェクトの省略名を設定します。 各フィールドを個別に変更しない限り、ここで指定する名前によって、クラスと [コクラス] の名前、ファイル (.CPP と .H) の名前、インターフェイスの名前、[種類] の名前が決まります。

  • クラス

    このオブジェクトを実装するクラスの名前を設定します。 この名前は [短い名前] で指定した名前に基づき、クラス名の一般的なプレフィックスである 'C' が先頭に付きます。

  • .h ファイル

    新しいオブジェクトのクラスにヘッダー ファイルの名前を設定します。 既定では、この名前は [短い名前] で指定した名前に基づきます。 選択した場所にファイル名を保存するには、あるいはクラス宣言を既存のファイルに追加するには、省略記号ボタンをクリックします。 既存のファイルを選択した場合、ウィザードでは、[完了] をクリックするまで、選択した場所にファイルは保存されません。

    ウィザードではファイルは上書きされません。 既存のファイルの名前を選択する場合、[完了] をクリックすると、ウィザードからクラス宣言をファイルのコンテンツに追加するかどうかを指定するように求められます。 ファイルを追加するには、[はい] をクリックします。ウィザードに戻り、別のファイル名を指定するには、[いいえ] をクリックします。

  • .cpp ファイル

    新しいオブジェクトのクラスに実装ファイルの名前を設定します。 既定では、この名前は [短い名前] で指定した名前に基づきます。 ファイル名を選択した場所に保存するには、省略記号ボタンをクリックします。 ファイルは、ウィザードで [完了] をクリックするまで選択した場所に保存されません。

    ウィザードではファイルは上書きされません。 既存のファイルの名前を選択する場合、[完了] をクリックすると、ウィザードからクラスの実装をファイルのコンテンツに追加するかどうかを指定するように求められます。 ファイルを追加するには、[はい] をクリックします。ウィザードに戻り、別のファイル名を指定するには、[いいえ] をクリックします。

  • 属性付き

    オブジェクトで属性を使うかどうかを示します。 属性付き ATL プロジェクトにオブジェクトを追加する場合はこのオプションが選択され、変更はできません。 つまり、属性のサポートと共に作成されたプロジェクトに追加できるのは、属性付きオブジェクトのみです。

    属性付きオブジェクトは、属性を使う ATL プロジェクトにのみ追加できます。 属性をサポートしていない ATL プロジェクトに対してこのオプションを選択した場合、ウィザードによって、プロジェクトに属性のサポートを追加するかどうかを指定するように求められます。

    既定では、このオプションを設定した後に追加するすべてのオブジェクトは、属性付きとして指定されます (チェック ボックスが選択されます)。 このボックスをオフにして、属性を使わないオブジェクトを追加することができます。

    詳細については、「アプリケーションの設定、ATL プロジェクト ウィザード」と「属性の基本的なしくみ」を参照してください。

COM (COM)

オブジェクトの COM 機能に関する情報を指定します。

  • コクラス

    オブジェクトでサポートされるインターフェイスの一覧を含むコンポーネント クラスの名前を設定します。

    Note

    属性を使用してプロジェクトを作成するか、コントロールで属性を使用することをこのウィザード ページで指定した場合、ATL には coclass 属性が含まれないため、このオプションを変更することはできません。

  • Interface

    オブジェクトのインターフェイスの名前を設定します。 既定では、インターフェイス名の先頭に "I" が付きます。

  • Type

    レジストリに表示されるオブジェクトの説明を設定します。

  • ProgID

    オブジェクトの CLSID の代わりにコンテナーで使用できる名前を設定します。 このフィールドには値が自動的に設定されます。 このフィールドの値を手動で設定しない場合、コントロールを他のツールで使用できない可能性があります。 たとえば、ProgID を設定しないで ActiveX コントロールを生成すると、[ActiveX コントロールの挿入] ダイアログ ボックスでそれを使用することはできません。 このダイアログ ボックスの詳細については、「ActiveX コントロールの挿入」を参照してください。

関連項目

ATL コントロール
複合コントロールに機能を追加する
ATL COM オブジェクトの基礎