ATL シンプル オブジェクト ウィザード
このウィザードを使用すると、最小 COM オブジェクトがプロジェクトに挿入されます。 ウィザードに関するこのページを使用して、オブジェクトとその COM 機能の C++ クラスとファイルを識別する名前を指定します。
このウィザードの「オプション」ページを使用して、オブジェクトのスレッド モデル、その集計サポート、およびそれを使用してデュアル インターフェイスと Automation をサポートするかどうかを指定します。 また、エラー情報インターフェイス、コネクション ポイント、Internet Explorer のサポート、フリースレッド マーシャリングに関するサポートも指定できます。
解説
Visual Studio 2008 以降、このウィザードによって生成された登録スクリプトでは、その COM コンポーネントが HKEY_LOCAL_MACHINE ではなく HKEY_CURRENT_USER 下に登録されます。 この動作を変更するには、ATL ウィザードの [すべてのユーザーについてコンポーネントを登録] オプションを設定します。
名前
プロジェクトに追加するオブジェクト、インターフェイス、およびクラスの名前を指定します。 [短い名前] 以外のすべてのボックスは、他とは独立して編集できます。 [短い名前] のテキストを変更すると、このページ内にある他のすべてのボックスの名前に変更が反映されます。 COM セクションで [コクラス] の名前を変更すると、その変更は [種類] と [ProgID] のボックスに反映されますが、[インターフェイス] の名前は変更されません。 名前付けに関するこの動作は、コントロールを開発するときに、すべての名前を識別しやすくするために設計されています。
Note
[コクラス] は属性なしプロジェクトでのみ編集可能です。 プロジェクトが属性付きである場合は、[コクラス] を編集できません。
C++
オブジェクト用に作成される C++ クラスの情報を指定します。
短い名前
オブジェクトの省略名を設定します。 指定する名前によって、
Class
とCoclass
の名前、.cpp ファイルと .h ファイルの名前、インターフェイスの名前、種類の名前、および ProgID が決まります (各フィールドを個別に変更しない限り)。.h ファイル
新しいオブジェクトのクラスにヘッダー ファイルの名前を設定します。 既定では、この名前は [短い名前] で指定した名前に基づきます。 選択した場所にファイル名を保存するには、あるいはクラス宣言を既存のファイルに追加するには、省略記号ボタンをクリックします。 既存のファイルを選択した場合、ウィザードで [完了] をクリックするまで、ファイルはウィザードによって選択した場所に保存されません。
ウィザードではファイルは上書きされません。 既存のファイルの名前を選択する場合、[完了] をクリックすると、ウィザードからクラス宣言をファイルのコンテンツに追加するかどうかを指定するように求められます。 ファイルを追加するには、[はい] をクリックします。ウィザードに戻り、別のファイル名を指定するには、[いいえ] をクリックします。
クラス
作成するクラスの名前を設定します。 この名前は [短い名前] で指定した名前に基づき、クラス名の一般的なプレフィックスである 'C' が先頭に付きます。
.cpp ファイル
新しいオブジェクトのクラスに実装ファイルの名前を設定します。 既定では、この名前は [短い名前] で指定した名前に基づきます。 ファイル名を選択した場所に保存するには、省略記号ボタンをクリックします。 ファイルは、ウィザードで [完了] をクリックするまで選択した場所に保存されません。
ウィザードではファイルは上書きされません。 既存のファイルの名前を選択する場合、[完了] をクリックすると、ウィザードからクラスの実装をファイルのコンテンツに追加するかどうかを指定するように求められます。 ファイルを追加するには、[はい] をクリックします。ウィザードに戻り、別のファイル名を指定するには、[いいえ] をクリックします。
属性付き
オブジェクトで属性を使うかどうかを示します。 属性付き ATL プロジェクトにオブジェクトを追加する場合はこのオプションが選択され、変更はできません。 つまり、属性のサポートと共に作成されたプロジェクトに追加できるのは、属性付きオブジェクトのみです。
属性付きオブジェクトは、属性を使う ATL プロジェクトにのみ追加できます。 属性をサポートしていない ATL プロジェクトに対してこのオプションを選択した場合、ウィザードによって、プロジェクトに属性のサポートを追加するかどうかを指定するように求められます。
既定では、このオプションを設定した後に追加するすべてのオブジェクトは、属性付きとして指定されます (チェック ボックスが選択されます)。 このボックスをオフにして、属性を使わないオブジェクトを追加することができます。
詳細については、「アプリケーションの設定、ATL プロジェクト ウィザード」と「属性の基本的なしくみ」を参照してください。
COM (COM)
オブジェクトの COM 機能に関する情報を指定します。
コクラス
オブジェクトでサポートされるインターフェイスの一覧を含むコンポーネント クラスの名前を設定します。
Note
属性を使用してプロジェクトを作成するか、このウィザード ページ上でオブジェクトで属性を使うことを示す場合、ATL には
coclass
属性が含まれていないため、このオプションを変更することはできません。Type
レジストリに表示されるオブジェクトの説明を設定します。
Interface
オブジェクト用に作成するインターフェイスを設定します。 このインターフェイスには、カスタム メソッドが含まれます。
ProgID
オブジェクトの CLSID の代わりにコンテナーで使用できる名前を設定します。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示