API 呼び出しからの戻りコードは、実行時に処理できるエラー状態です。このタイプのエラーを処理する方法は、C API または C++ API のどちらを使用しているかによって異なります。
アプリケーションが C API 関数を呼び出して、その呼び出しが失敗した場合、XMS_OK 以外の戻りコードの応答と、失敗の原因に関する詳細情報が含まれている XMS エラー・ブロックが戻されます。詳しくは、戻りコードおよび ErrorBlockを参照してください。
メソッドの使用時に、C++ API は例外をスローします。
アプリケーションは例外リスナーを使用して、接続の問題に関する通知を非同期に受信します。例外リスナーは XMS C または C++ API に提供されており、これらの API を使用して初期化されます。 詳しくは、C でのメッセージ・リスナー関数および例外リスナー関数の使用法 および C++ でのメッセージ・リスナーおよび例外リスナーの使用法を参照してください。
一部のエラー状態が発生した場合、一部のリソースが使用不可になっており、アプリケーションが実行できるアクションは、アプリケーションが呼び出す XMS 関数によって異なります。例えば、サーバーに接続できない場合、アプリケーションは接続が確立するまで関数を毎秒再実行します。XMS エラー・ブロックまたは例外には、実行するアクションを判別するために十分な情報が含まれていないことがあります。また、このような状況では、より詳細な診断情報が含まれているリンク・エラー・ブロックまたは例外にリンクしていることがあります。
C API では、常に XMS_OK 以外の戻りコードの応答をテストし、常に API 呼び出しにエラー・ブロックを受け渡します。通常、実行されるアクションは、アプリケーションが使用する API 関数によって決まります。詳しくは、C でのエラーの処理を参照してください。
C++ API では、常にメソッド呼び出しを try ブロックに組み込み、またすべてのタイプの XMS 例外をキャッチするため、catch 構成体に Exception クラスを指定します。詳しくは、C++ でのエラーの処理を参照してください。
例外リスナーは、いつでも開始可能な非同期エラー状態パスです。例外リスナー機能がリスナー自体のスレッドで開始する場合、通常これは、標準の XMS API エラー状態よりも重大な障害が発生していることを示します。適切なアクションを実行する必要がありますが、この際に注意して XMS スレッド化モデルのルールに従ってください (スレッド化モデルを参照)。