Funzione TmPrepareEnlistment (wdm.h)

La routine TmPrepareEnlistment avvia l'operazione di preparazione per una transazione specificata.

Sintassi

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

Parametri

[in] Enlistment

Puntatore a un oggetto di inserimento. Il componente può ricevere questo puntatore come input a una routine di callback resourceManagerNotification . In alternativa, il componente può chiamare ObReferenceObjectByHandle e fornire l'handle dell'oggetto che una chiamata precedente a ZwCreateEnlistment, TmCreateEnlistment o ZwOpenEnlistment fornito.

[in] TmVirtualClock

Puntatore a un valore di orologio virtuale. Questo parametro è facoltativo e può essere NULL.

Valore restituito

TmPrepareEnlistment restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questa routine potrebbe restituire uno dei valori seguenti:

Codice restituito Descrizione
STATUS_ENLISTMENT_NOT_SUPERIOR
Il chiamante non è un gestore delle transazioni superiore per l'inserimento.
STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED
Il chiamante non è stato registrato per ricevere notifiche di TRANSACTION_NOTIFY_PREPARE_COMPLETE.
STATUS_TRANSACTION_REQUEST_NOT_VALID
La transazione dell'elenco non è in uno stato che consente di entrare nella fase di preparazione.
STATUS_ACCESS_DENIED
Il chiamante non dispone dell'accesso appropriato all'oggetto enlistment.
 

La routine potrebbe restituire altri valori NTSTATUS.

Commenti

La routine TmPrepareEnlistment è una versione basata su puntatore della routine ZwPrepareEnlistment.

Solo i responsabili delle transazioni superiori possono chiamare TmPrepareEnlistment.

Per informazioni su quando usare le routine TmXxx di KTM anziché le routine Zw Xxx, vedere Uso di routine TmXxx.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Vista e versioni successive del sistema operativo.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Vedi anche

ObReferenceObjectByHandle

ResourceManagerNotification

TmCreateEnlistment

ZwCreateEnlistment

ZwOpenEnlistment

ZwPrepareEnlistment