Condividi tramite


Funzione TmPrepareEnlistment (wdm.h)

La routine TmPrepareEnlistment avvia l'operazione di pre-preparazione per la transazione di un'integrazione specificata.

Sintassi

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

Parametri

[in] Enlistment

Puntatore a un oggetto di integrazione. 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 fornito da una chiamata precedente a ZwCreateEnlistment, TmCreateEnlistment o ZwOpenEnlistment .

[in] TmVirtualClock

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

Valore restituito

TmPrePrepareEnlistment 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 transazioni superiore per l'integrazione.
STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED
Il chiamante non è stato registrato per ricevere notifiche di TRANSACTION_NOTIFY_PREPREPARE_COMPLETE.
STATUS_TRANSACTION_REQUEST_NOT_VALID
Lo stato della transazione non consente di entrare nella fase di pre-preparazione.
STATUS_ACCESS_DENIED
Il chiamante non dispone dell'accesso appropriato all'oggetto di integrazione.
 

La routine potrebbe restituire altri valori NTSTATUS.

Commenti

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

Solo i gestori di transazioni superiori possono chiamare TmPrepareEnlistment.

Per informazioni su quando usare le routine TmXxx di KTM anziché le routine ZwXxx , vedere Using TmXxx Routines (Uso delle 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

ZwPrePrepareEnlistment