TmPrepareEnlistment-Funktion (wdm.h)

Die TmPrepareEnlistment-Routine initiiert den Vorbereitungsvorgang für die Transaktion eines angegebenen Eintrags.

Syntax

NTSTATUS TmPrepareEnlistment(
  [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

TmPrepareEnlistment 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_PREPARE_COMPLETE Benachrichtigungen zu erhalten.
STATUS_TRANSACTION_REQUEST_NOT_VALID
Die Transaktion der Einlistung befindet sich nicht in einem Zustand, der es ihr ermöglicht, in die Vorbereitungsphase einzusteigen.
STATUS_ACCESS_DENIED
Der Aufrufer hat keinen geeigneten Zugriff auf das Eintragsobjekt.
 

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

Hinweise

Die TmPrepareEnlistment-Routine ist eine zeigerbasierte Version der ZwPrepareEnlistment-Routine .

Nur überlegene Transaktionsmanager können TmPrepareEnlistment 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

ZwCreateEnlistment

ZwOpenEnlistment

ZwPrepareEnlistment