Freigeben über


TmCommitEnlistment-Funktion (wdm.h)

Die TmCommitEnlistment-Routine initiiert den Commitvorgang für die Transaktion eines angegebenen Eintrags.

Syntax

NTSTATUS TmCommitEnlistment(
  [in] PKENLISTMENT   Enlistment,
  [in] PLARGE_INTEGER TmVirtualClock
);

Parameter

[in] Enlistment

Ein Zeiger auf ein Eintragsobjekt. Ihre Komponente kann diesen Zeiger als Eingabe für eine ResourceManagerNotification-Rückrufroutine empfangen. Alternativ kann Ihre Komponente ObReferenceObjectByHandle aufrufen und das Objekthandle bereitstellen, das ein vorheriger Aufruf von ZwCreateEnlistment, TmCreateEnlistment oder ZwOpenEnlistment bereitgestellt hat.

[in] TmVirtualClock

Ein Zeiger auf einen virtuellen Uhrwert. Dieser Parameter ist optional und kann NULL sein.

Rückgabewert

TmCommitEnlistment 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
STATUS_ENLISTMENT_NOT_SUPERIOR
Der Aufrufer ist kein überlegener Transaktions-Manager für die Einlistung.
STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED
Der Anrufer hat sich nicht registriert, um TRANSACTION_NOTIFY_COMMIT_COMPLETE Benachrichtigungen zu erhalten.
STATUS_TRANSACTION_REQUEST_NOT_VALID
Die Transaktion der Einlistung befindet sich nicht in einem Zustand, der ein Commit ermöglicht.
STATUS_TRANSACTION_NOT_ACTIVE
Der Commitvorgang für diese Transaktion wurde bereits gestartet.
STATUS_TRANSACTION_ALREADY_ABORTED
Für die Transaktion kann kein Commit ausgeführt werden, da ein Rollback ausgeführt wurde.
 

Die Routine gibt möglicherweise andere NTSTATUS-Werte zurück.

Hinweise

Die TmCommitEnlistment-Routine ist eine zeigerbasierte Version der ZwCommitEnlistment-Routine .

Nur überlegene Transaktionsmanager können TmCommitEnlistment aufrufen.

Informationen dazu, wann die TmXxx-Routinen von KTM anstelle von ZwXxx-Routinen verwendet werden sollen, finden Sie unter Verwenden von TmXxx-Routinen.

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

Weitere Informationen

ObReferenceObjectByHandle

ResourceManagerNotification

TmCreateEnlistment

ZwCommitEnlistment

ZwCreateEnlistment

ZwOpenEnlistment