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