Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Mobile Link - クライアント管理 » Mobile Link 用 SQL Anywhere クライアント » dbmlsync API » C++ 用 dbmlsync API

 

GetErrorInfo メソッド

インタフェース内の別のメソッドが失敗した直後にこのメソッドを使用して、失敗に関する追加情報を取得します。

構文
const DBSC_ErrorInfo *GetErrorInfo(  )
戻り値

失敗に関する情報を含む DBSC_ErrorInfo 構造体へのポインタを返します。DBSC_ErrorInfo 構造体は、次のように定義されます。

typedef struct {
    DBSC_ErrorType type;
    const char  *str1;
    const char  *str2;
    long int  val1;
    long int  val2;
    DBSC_SyncHdl hdl1;
} DBSC_ErrorInfo;

この構造体の内容は、クラス・メソッドが次回呼び出されたときに上書きされることがあります。

備考

type フィールドは、失敗の理由を示す値を格納します。現在、type は次の値を取ります。

  • DBSC_ERR_OK   エラーは発生しませんでした。

  • DBSC_ERR_NOT_INITIALIZED   クラスが、Init メソッドを呼び出すことによって初期化されていません。

  • DBSC_ERR_ALREADY_INITIALIZED   すでに初期化されたクラスに対して、Init メソッドが呼び出されました。

  • DBSC_ERR_NOT_CONNECTED   dbmlsync サーバへの接続がありません。

  • DBSC_ERR_CANT_RESOLVE_HOST   ホスト情報を解決できません。

  • DBSC_ERR_CONNECT_FAILED   接続が失敗しました。

  • DBSC_ERR_INITIALIZING_TCP_LAYER   TCP レイヤの初期化中にエラーが発生しました。

  • DBSC_ERR_ALREADY_CONNECTED   すでに接続が確立されているため、Connect メソッドが失敗しました。

  • DBSC_ERR_PROTOCOL_ERROR   これは内部エラーです。

  • DBSC_ERR_CONNECTION_REJECTED   dbmlsync サーバによって接続が拒否されました。

    str1 は、サーバによって返された文字列を指します。この文字列には、接続試行が拒否された理由の詳細が含まれることがあります。

  • DBSC_ERR_TIMED _OUT   サーバからの応答を待っている間にタイムアウトになりました。

  • DBSC_ERR_STILL_CONNECTED   クラスがまだサーバに接続されているため、そのクラスに対して Fini を実行できませんでした。

  • DBSC_ERR_SYNC_NOT_CANCELED   サーバが同期要求をキャンセルできませんでした。同期がすでに進行中であることが原因と思われます。

  • DBSC_ERR_INVALID_VALUE   SetProperty メソッドに無効なプロパティ値が渡されました。

  • DBSC_ERR_INVALID_PROP_NAME   指定したプロパティ名は無効です。

  • DBCS_ERR_VALUE_TOO_LONG   プロパティ値が長すぎます。プロパティは、DBCS_MAX_PROPERTY_LEN で指定されているバイト数よりも短くしてください。

  • DBSC_ERR_SERVER_SIDE_ERROR   サーバでエラーがありました。

    str1 は、サーバによって返された文字列を指します。この文字列には、エラーの詳細が含まれることがあります。

  • DBSC_ERR_CREATE_PROCESS_FAILED   新しい dbmlsync サーバを起動できません。

  • DBSC_ERR_READ_FAILED   dbmlsync サーバからのデータの読み込み中にエラーが発生しました。

  • DBSC_ERR_WRITE_FAILED   dbmlsync サーバへのデータの送信中にエラーが発生しました。

  • DBSC_ERR_NO_SERVER_RESPONSE   要求されたアクションを完了するために必要な応答をサーバから受信できませんでした。

  • DBSC_ERR_UID_OR_PWD_TOO_LONG   指定した UID または PWD が長すぎます。

  • DBSC_ERR_UID_OR_PWD_NOT_VALID   指定した UID または PWD が無効です。

  • DBSC_ERR_INVALID_PARAMETER   関数に渡されたパラメータのいずれかが無効です。

  • DBSC_ERR_WAIT_FAILED   サーバが停止するのを待っている間にエラーが発生しました。

  • DBSC_SHUTDOWN_NOT_CALLED   ShutdownServer メソッドを呼び出す前に WaitForServerShutdown メソッドが呼び出されました。

  • DBSC_ERR_NO_SYNC_ACK   同期要求がサーバに送信されましたが、受信確認が受信されませんでした。サーバが要求を受信したかどうかを判別できません。

    hdl1 は、送信された同期要求のハンドルです。サーバが要求を受信した場合は、このハンドルを使用すると、GetEvent メソッド を使用して取得された同期用イベントを識別できます。

str1、str2、val1、val2、hdl1 には失敗に関する詳細が含まれ、その意味は type 値によって異なります。ほとんどの type 値では、これらのフィールドに有用な情報はありません。例外は、前述のリストに示しています。