Share via


JetRegisterCallback-Funktion

Letzte Änderung: Freitag, 27. Februar 2015

Gilt für: Windows | Windows Server

JetRegisterCallback-Funktion

Die JetRegisterCallback -Funktion ermöglicht die Anwendung, die Datenbank-Engine nach bestimmten Ereignissen Benachrichtigungen ausgeben, um die Anwendung zu konfigurieren. Diese Benachrichtigungen einer bestimmten Tabelle zugeordnet sind und bleiben wirksam, nur bis nach unten JetTerm istdie Instanz, die die Tabelle geschlossen ist.

Windows XP:JetRegisterCallback wird in Windows XP eingeführt.

JET_ERR JET_API JetRegisterCallback(
  __in          JET_SESID sesid,
  __in          JET_TABLEID tableid,
  __in          JET_CBTYP cbtyp,
  __in          JET_CALLBACK pCallback,
  __in          void* pvContext,
  __out         JET_HANDLE* phCallbackId
);

Parameter

sesid

Die Sitzung für diesen Aufruf verwenden.

Tabellen-ID

Der Cursor für diesen Aufruf verwenden.

cbtyp

Eine Bit-Maske besteht der Rückruf Gründe für die Anwendung Benachrichtigungen empfangen möchte.

Um diese Bitmaske einfach oder zusammen gültige Rückrufnummer aus Gründen der JET_CBTYP -Enumeration zu erstellen.

pCallback

Der Funktionszeiger an die Callback-Funktion für die Anwendung.

pvContext

Gibt einen Kontext-Zeiger, der an die Callback-Funktion für die Anwendung gewährt wird.

phCallbackId

Gibt ein Handle, die später verwendet werden kann, die angegebene Rückruffunktion unter Verwendung JetUnregisterCallbackdie Registrierung abzubrechen.

Return Value

Diese Funktion gibt den Datentyp der JET_ERR mit einem der folgenden Rückgabecodes. Weitere Informationen zu den möglichen ESE-Fehlern finden Sie unter Extensible Storage Engine-Fehler und Fehler behandeln Parameter.

Rückgabecode

Beschreibung

JET_errSuccess

Der Vorgang wurde erfolgreich abgeschlossen.

JET_errClientRequestToStopJetService

Es ist nicht möglich, um den Vorgang abzuschließen, da alle Aktivitäten in der Instanz dieser Sitzung aufgrund eines Aufrufs von JetStopServiceeingestellt hat.

JET_errInstanceUnavailable

Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz ein schwerwiegender Fehler, der erfordert aufgetreten ist, dass der Zugriff auf alle Daten gesperrt werden, um die Integrität der Daten zu schützen. Dieser Fehler wird nur von Windows XP und späteren Versionen zurückgegeben werden.

JET_errInvalidParameter

Einer der bereitgestellten Parameter einen unerwarteten Wert enthalten oder enthalten einen Wert, der nicht mit dem Wert eines anderen Parameters kombiniert keinen Sinn. Dieser Fehler wird durch JetRegisterCallback zurückgegeben werden bei:

  • Cbtyp ist 0 (null),

  • pCallback ist NULL.

  • PhCallbackId ist NULL.

JET_errNotInitialized

Es ist nicht möglich, um den Vorgang abzuschließen, da die Instanz dieser Sitzung noch nicht initialisiert wurde.

JET_errRestoreInProgress

Es ist nicht möglich, um den Vorgang abzuschließen, da ein Wiederherstellungsvorgang ausgeführt auf die Instanz der Sitzung zugeordnet wird.

JET_errSessionSharingViolation

Die gleiche Sitzung kann für mehrere Threads gleichzeitig verwendet werden. Dieser Fehler wird nur von Windows XP und späteren Versionen zurückgegeben werden.

JET_errTermInProgress

Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz heruntergefahren wird.

Bei Erfolg wird der angegebene Rückruf Gründen angegebene Rückruf mit der Tabelle mit den angegebenen Cursor verknüpft ist registriert. Keine Änderung an den Zustand der Datenbank erfolgt.

Bei einem Fehler wird der Rückruf nicht registriert werden. Keine Änderung an den Zustand der Datenbank erfolgt.

Anmerkungen

Diese Methode stellt eine Möglichkeit für die Anwendung flüchtige Rückrufe mit einer Tabelle in einer Datenbank zuordnen. Wünscht die Anwendung zuzuordnende Rückrufe mit einer Tabelle in der Datenbank beibehalten, dann sollten sie den Rückruf an JET_TABLECREATE mit JetCreateTableColumnIndexübergeben.

Voraussetzungen

-Client,

Erfordert Windows Vista oder Windows XP.

Server

Erfordert WindowsServer 2008 oder WindowsServer 2003.

Kopfzeile

In Esent.h deklariert.

Library

Verwenden Sie ESENT.lib.

DLL

"ESENT.dll" erfordert.

Siehe auch

JET_CALLBACK
JET_CBTYP
JET_ERR
JET_HANDLE
JET_SESID
JET_TABLEID
JetCreateTableColumnIndex
JetTerm ist
JetUnregisterCallback