COM エラー処理インターフェイスと関数を使用すると、次のようにエラー情報を取得できます。
- 返された値が、オブジェクトが処理する準備ができているエラーを表しているかどうかを確認します。
- QueryInterface を呼び出して、ISupportErrorInfo インターフェイスへのポインターを取得します。 次 ISupportErrorInfo::InterfaceSupportsErrorInfo を呼び出して、エラーが返されたオブジェクトによって発生し、エラー オブジェクトが以前の呼び出しではなく現在のエラーに関連していることを確認します。
- エラー オブジェクトへのポインターを取得するには、GetErrorInfo 関数を呼び出します。
- エラー オブジェクトから情報を取得するには、IErrorInfo メソッドを使用します。
オブジェクトがエラーを処理する準備ができていないが、エラー情報を呼び出しチェーンの下に伝達する必要がある場合は、単に戻り値を呼び出し元に渡す必要があります。 GetErrorInfo 関数はエラー情報をクリアし、エラー オブジェクトの所有権を呼び出し元に渡すので、関数はエラーを処理するオブジェクトによってのみ呼び出す必要があります。