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

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Clientadministration » SQL Anywhere-Clients für MobiLink » Dbmlsync-API » Dbmlsync-API für C++

 

GetErrorInfo-Methode

Verwenden Sie diese Methode, um zusätzliche Informationen über den Fehler unmittelbar nach dem Fehlschlag einer anderen Methode in der Schnittstelle abzurufen.

Syntax
const DBSC_ErrorInfo *GetErrorInfo(  )
Rückgabe

Gibt einen Zeiger auf eine DBSC_ErrorInfo-Struktur zurück, die Informationen über den Fehler enthält. Die DBSC_ErrorInfo-Struktur ist wie folgt definiert:

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

Der Inhalt dieser Struktur kann beim nächsten Aufruf einer beliebigen Klassenmethode überschrieben werden.

Bemerkungen

Das Feld type enthält einen Wert, der den Grund für den Fehler angibt. Aktuell kann type folgende Werte enthalten:

  • DBSC_ERR_OK   Es ist kein Fehler aufgetreten.

  • DBSC_ERR_NOT_INITIALIZED   Die Klasse wurde nicht durch den Aufruf der init-Methode initialisiert.

  • DBSC_ERR_ALREADY_INITIALIZED   Die init-Methode wurde für eine Klasse aufgerufen, die bereits initialisiert war.

  • DBSC_ERR_NOT_CONNECTED   Es besteht keine Verbindung mit einem dbmlsync-Server.

  • DBSC_ERR_CANT_RESOLVE_HOST   Hostinformationen konnten nicht aufgelöst werden.

  • DBSC_ERR_CONNECT_FAILED   Die Verbindung ist fehlgeschlagen.

  • DBSC_ERR_INITIALIZING_TCP_LAYER   Bei der Initialisierung der TCP-Schicht ist ein Fehler aufgetreten.

  • DBSC_ERR_ALREADY_CONNECTED   Die Connect-Methode ist fehlgeschlagen, da bereits eine Verbindung bestand.

  • DBSC_ERR_PROTOCOL_ERROR   Dies ist ein interner Fehler.

  • DBSC_ERR_CONNECTION_REJECTED   Die Verbindung wurde vom dbmlsync-Server zurückgewiesen.

    str1 zeigt auf eine vom Server zurückgegebene Zeichenfolge, die weitere Informationen darüber bereitstellen kann, warum der Verbindungsversuch abgelehnt wurde.

  • DBSC_ERR_TIMED _OUT   Beim Warten auf eine Antwort des Servers wurde der Zeitablaufwert überschritten.

  • DBSC_ERR_STILL_CONNECTED   Die Fini-Methode konnte nicht für die Klasse ausgeführt werden, da sie noch mit dem Server verbunden ist.

  • DBSC_ERR_SYNC_NOT_CANCELED   Der Server konnte die Synchronisationsanforderung nicht abbrechen. Dies liegt wahrscheinlich daran, dass die Synchronisation bereits in Ausführung war.

  • DBSC_ERR_INVALID_VALUE   Ein ungültiger Eigenschaftswert wurde an die SetProperty-Methode übergeben.

  • DBSC_ERR_INVALID_PROP_NAME   Der angegebene Eigenschaftsname ist ungültig.

  • DBCS_ERR_VALUE_TOO_LONG   Der Eigenschaftswert ist zu lang. Eigenschaften müssen weniger als DBCS_MAX_PROPERTY_LEN Byte lang sein.

  • DBSC_ERR_SERVER_SIDE_ERROR   Auf dem Server ist ein Fehler aufgetreten.

    str1 zeigt auf eine vom Server zurückgegebene Zeichenfolge, die weitere Informationen über den Fehler bereitstellen kann.

  • DBSC_ERR_CREATE_PROCESS_FAILED   Es konnte kein neuer dbmlsync-Server gestartet werden.

  • DBSC_ERR_READ_FAILED   Der Fehler ist beim Lesen von Daten vom dbmlsync-Server aufgetreten.

  • DBSC_ERR_WRITE_FAILED   Der Fehler ist beim Senden von Daten an den dbmlsync-Server aufgetreten.

  • DBSC_ERR_NO_SERVER_RESPONSE   Eine Antwort vom Server, die für die Ausführung der angeforderten Aktion erforderlich ist, konnte nicht empfangen werden.

  • DBSC_ERR_UID_OR_PWD_TOO_LONG   Der angegebene Wert für UID oder PWD ist zu lang.

  • DBSC_ERR_UID_OR_PWD_NOT_VALID   Der angegebene Wert für UID oder PWD ist ungültig.

  • DBSC_ERR_INVALID_PARAMETER   Einer der an die Funktion übergebenen Parameter war ungültig.

  • DBSC_ERR_WAIT_FAILED   Während darauf gewartet wurde, dass der Server herunterfährt, ist ein Fehler aufgetreten.

  • DBSC_SHUTDOWN_NOT_CALLED   Die WaitForServerShutdown-Methode wurde aufgerufen, ohne dass zuerst die ShutdownServer-Methode aufgerufen wurde.

  • DBSC_ERR_NO_SYNC_ACK   Es wurde eine Synchronisationsanforderung an den Server gesendet, doch es wurde keine Bestätigung empfangen. Es gibt keine Möglichkeit festzustellen, ob der Server die Anforderung empfangen hat.

    hdl1 ist das Handle für die gesendete Synchronisationsanforderung. Wenn der Server die Anforderung empfangen hat, kann dieses Handle verwendet werden, um die Ereignisse für die mit der GetEvent-Methode abgerufene Synchronisation zu identifizieren.

str1, str2, val1, val2 und hdl1 enthalten zusätzliche Informationen über den Fehler. Ihre Bedeutung hängt jeweils vom type-Wert ab. Für die meisten type-Werte enthalten diese Felder keine nützlichen Informationen. Die Ausnahmen werden in der obenstehenden Liste angeführt.