Función ZwPrepareEnlistment (wdm.h)
La rutina ZwPrepareEnlistment inicia la operación de preparación previa para una transacción de inscripción especificada.
Sintaxis
NTSYSCALLAPI NTSTATUS ZwPrePrepareEnlistment(
[in] HANDLE EnlistmentHandle,
[in, optional] PLARGE_INTEGER TmVirtualClock
);
Parámetros
[in] EnlistmentHandle
Identificador de un objeto de inscripción obtenido por una llamada anterior a ZwCreateEnlistment o ZwOpenEnlistment. El objeto debe representar una inscripción superior y el identificador debe tener ENLISTMENT_SUPERIOR_RIGHTS acceso al objeto.
[in, optional] TmVirtualClock
Puntero a un valor de reloj virtual. Este parámetro es opcional y puede ser NULL.
Valor devuelto
ZwPrepareEnlistment devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, esta rutina podría devolver uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
|
El autor de la llamada no es un administrador de transacciones superior para la inscripción. |
|
El autor de la llamada no se registró para recibir TRANSACTION_NOTIFY_PREPREPARE_COMPLETE notificaciones. |
|
El identificador especificado no es un identificador para un objeto de inscripción. |
|
El identificador de objeto no es válido. |
|
El autor de la llamada no tiene el acceso adecuado al objeto de inscripción. |
|
La transacción de la inscripción no está en un estado que le permita entrar en la fase de preparación. |
La rutina podría devolver otros valores NTSTATUS.
Comentarios
Solo los administradores de transacciones superiores pueden llamar a ZwPrepareEnlistment.
Los autores de llamadas de ZwPreprepareEnlistment deben registrarse para recibir notificaciones TRANSACTION_NOTIFY_PREPREPARE_COMPLETE.
La rutina ZwPrepareEnlistment hace que KTM envíe notificaciones TRANSACTION_NOTIFY_PREPREPARE a todos los administradores de recursos que se han inscrito en la transacción.
Para obtener más información sobre ZwPreprepareEnlistment, vea Crear un administrador de transacciones superior y controlar las operaciones de confirmación.
NtPrepareEnlistment y ZwPrepareEnlistment son dos versiones de la misma rutina de Windows Native System Services.
En el caso de las llamadas desde controladores en modo kernel, las versiones NtXxx y ZwXxx de una rutina de Windows Native System Services pueden comportarse de forma diferente en la forma en que controlan e interpretan los parámetros de entrada. Para obtener más información sobre la relación entre las versiones NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Vista y versiones posteriores del sistema operativo. |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Wdm.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm) |
Consulte también
Uso de las versiones Nt y Zw de las rutinas nativas de System Services