例外処理 : OLE の例外
OLE で例外を処理するための手法と機能は、他の例外を処理する場合と同じです。 例外処理の詳細については、「例外とエラー処理に関する最新の C++ のベストプラクティス」を参照してください。
すべての例外オブジェクトは、抽象基底クラス CException
から派生します。 MFC には、OLE 例外を処理するためのクラスが 2 つ用意されています。
COleException 一般的な OLE 例外を処理するために使用します。
COleDispatchException OLE ディスパッチ (オートメーション) の例外を生成および処理するために使用します。
これらの 2 つのクラスの違いは、提供する情報の量とその使用場所です。 COleException
には、例外の OLE ステータス コードが含まれているパブリック データ メンバーがあります。 COleDispatchException
は、次のような詳細情報を提供します。
アプリケーション固有のエラー コード
「ディスクがいっぱいです」などのエラーの説明
アプリケーションがユーザーに追加情報を提供するために使用できるヘルプ コンテキスト
アプリケーションのヘルプ ファイルの名前
この例外を発生させたアプリケーションの名前
COleDispatchException
は、Microsoft Visual Basic のような製品で使用できるように、詳細情報を提供します。 メッセージ ボックスまたはその他の通知で、音声によるエラーの説明を使用できます。ヘルプ情報を使用して、例外の原因となった状況にユーザーが対応するのに役立てることができます。
2つのグローバル関数は、AfxThrowOleException と AfxThrowOleDispatchException という 2 つの OLE 例外クラスに対応します。 これらを使用して、一般的な OLE 例外と OLE ディスパッチ例外をそれぞれスローします。