次の方法で共有


エラー トラッピング

データ バインディング時のエラー トラッピングの発生元として、エラー イベントとエラー オブジェクトの 2 つが挙げられます。

エラー イベントによるエラー トラッピング

ADO データ コントロールおよび RDO RemoteData コントロールのデータ コントロールには、エラー イベントがあります。通常は、エラー イベント ハンドラーを設定します。イベント ハンドラーは、次のようなシグネチャ (引数の数、順番、および型) を持ちます。

void CMyDlg::OnErrorAdodc1(long ErrorNumber,
                           BSTR* FAR Description,
                           long Scode,
                           LPCTSTR Source,
                           LPCTSTR HelpFile,
                           long HelpContext,
                           BOOL FAR* fCancelDisplay)

通常は Description フィールドにデータが設定されます。ErrorNumber フィールドと Scode フィールドには、COM エラーが発生した場合だけ、データが設定されます。標準のイベント ハンドラーは、Description フィールドをメッセージ ボックスに表示します。次に例を示します。

{
   USES_CONVERSION;   
// note: have to include the ATL file ATLConv.h to use the ATL conversion macros
   ::AfxMessageBox(OLE2T(*Description), MB_OK);
}

ただし、ADO データ コントロールおよび RDO RemoteData コントロールは既にエラー イベントをトラップするように設定されているため、コーディングは不要です。

エラー オブジェクトによるエラー トラッピング

ADO と RDO には、エラー オブジェクトがあります。ラッパー クラスを作成すると、RDO RemoteData コントロールはエラー オブジェクト用のラッパー関数を作成します。一方、ADO データ コントロールは、このようなラッパー関数を作成しません。

ADO データ コントロールは、ADO エラー メッセージを自動的に表示します。

参照

関連項目

Visual C++ で ActiveX コントロールによるデータ連結を行う