ZwRecoverEnlistment-Funktion (wdm.h)
Die ZwRecoverEnlistment-Routine initiiert einen Wiederherstellungsvorgang für die Transaktion, die einer angegebenen Registrierung zugeordnet ist.
Syntax
NTSYSCALLAPI NTSTATUS ZwRecoverEnlistment(
[in] HANDLE EnlistmentHandle,
[in, optional] PVOID EnlistmentKey
);
Parameter
[in] EnlistmentHandle
Ein Handle für ein Eintragsobjekt , das durch einen vorherigen Aufruf von ZwCreateEnlistment oder ZwOpenEnlistment abgerufen wurde. Das Handle muss über ENLISTMENT_RECOVER Zugriff auf das Objekt verfügen.
[in, optional] EnlistmentKey
Ein Zeiger auf den Eintragsschlüsselwert, den der Ressourcen-Manager zuvor als EnlistmentKey-Parameter auf ZwCreateEnlistment angegeben hat. Dieser Parameter ist optional und kann NULL sein, wenn der Ressourcen-Manager beim Aufrufen von ZwCreateEnlistment keinen Eintragsschlüssel bereitgestellt hat.
Rückgabewert
ZwRecoverEnlistment gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Routine möglicherweise einen der folgenden Werte zurück:
Rückgabecode | Beschreibung |
---|---|
|
Das angegebene Handle ist kein Handle für ein Eintragsobjekt. |
|
Das Objekthandle ist ungültig. |
|
Die Transaktion oder ihre Einlistung befindet sich nicht im richtigen Zustand. |
|
KTM hat der Benachrichtigungswarteschlange des Ressourcen-Managers eine Commit-, Rollback- oder Zweifelsbenachrichtigung hinzugefügt, und der Ressourcen-Manager verwendet keine ResourceManagerNotification-Rückrufroutine . |
|
Der Aufrufer hat keinen geeigneten Zugriff auf das Eintragsobjekt. |
Die Routine gibt möglicherweise andere NTSTATUS-Werte zurück.
Hinweise
Nachdem ein Ressourcen-Manager ZwRecoverEnlistment aufgerufen hat, übermittelt KTM entweder eine TRANSACTION_NOTIFY_COMMIT, TRANSACTION_NOTIFY_ROLLBACK oder TRANSACTION_NOTIFY_INDOUBT Benachrichtigung für die Aufnahme. Daher muss der Ressourcen-Manager, sofern er keine ResourceManagerNotification-Rückrufroutine verwendet, sofort ZwGetNotificationResourceManager aufrufen, wenn ZwRecoverEnlistment STATUS_SUCCESS oder STATUS_PENDING zurückgibt.
Weitere Informationen zu ZwRecoverEnlistment finden Sie unter Behandeln von Wiederherstellungsvorgängen.
NtRecoverEnlistment und ZwRecoverEnlistment sind zwei Versionen derselben Windows Native System Services-Routine.
Bei Aufrufen von Kernelmodustreibern können sich die NtXxx - und ZwXxx-Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter verarbeiten und interpretieren. Weitere Informationen zur Beziehung zwischen den Nt Xxx- und ZwXxx-Versionen einer Routine finden Sie unter Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienstroutinen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows Vista und höheren Betriebssystemversionen. |
Zielplattform | Universell |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm) |
Weitere Informationen
Verwenden von Nt- und Zw-Versionen der Systemdienstroutinen