次の方法で共有


support_error_info

詳細なエラーを返すためのサポートを実装します。

[ support_error_info(
   error_interface=uuid
) ]

パラメータ

  • error_interface
    IErrorInfo を実装しているインターフェイスの識別子。

解説

C++ 属性 support_error_info は、適用先のオブジェクトで検出された詳細な状況依存のエラーを返すためのサポートをクライアントに対して実装します。オブジェクトでエラーをサポートするには、そのオブジェクトが IErrorInfo インターフェイスのメソッドを実装する必要があります。詳細については、「IDispatch と IErrorInfo のサポート」を参照してください。

この属性により、適用先のオブジェクトに基本クラスとして ISupportErrorInfoImpl クラス クラスが追加されます。その結果、ISupportErrorInfo が既定の実装になり、単一のインターフェイスがオブジェクトでエラーを発生する場合に使用できます。

使用例

ISupportErrorInfo インターフェイスの既定のサポートを CMyClass オブジェクトに追加するコードを次に示します。

// cpp_attr_ref_support_error_info.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"

[module (name="mymod")];
[object, uuid("f0b17d66-dc6e-4662-baaf-76758e09c878")]
__interface IMyErrors
{
};

[ coclass, support_error_info("IMyErrors"),
  uuid("854dd392-bdc7-4781-8667-8757936f2a4f") ]
class CMyClass
{
};

必要条件

属性コンテキスト

対象

class

複数回の適用

必要な属性

なし

無効な属性

なし

属性コンテキストの詳細については、「属性コンテキスト」を参照してください。

参照

概念

COM 属性

クラス属性

ATL サンプル