TmPrepareComplete function (wdm.h)
The TmPrepareComplete routine notifies KTM that the calling resource manager has finished preparing a transaction's data.
Syntax
NTSTATUS TmPrepareComplete(
[in] PKENLISTMENT Enlistment,
[in] PLARGE_INTEGER TmVirtualClock
);
Parameters
[in] Enlistment
A pointer to an enlistment object. Your component can receive this pointer as input to a ResourceManagerNotification callback routine. Alternatively, your component can call ObReferenceObjectByHandle and supply the object handle that a previous call to ZwCreateEnlistment, TmCreateEnlistment, or ZwOpenEnlistment provided.
[in] TmVirtualClock
A pointer to a virtual clock value. This parameter is optional and can be NULL.
Return value
TmPrepareComplete returns STATUS_SUCCESS if the operation succeeds. Otherwise, this routine might return one of the following values:
Return code | Description |
---|---|
|
The transaction or its enlistment is not in the correct state. For example, KTM did not send a TRANSACTION_NOTIFY_PREPREPARE notification. |
The routine might return other NTSTATUS values.
Remarks
The TmPrepareComplete routine is a pointer-based version of the ZwPrepareComplete routine.
For information about when to use KTM's TmXxx routines instead of ZwXxx routines, see Using TmXxx Routines.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Windows Vista and later operating system versions. |
Target Platform | Universal |
Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |