Compartir a través de


Función NtOpenEnlistment (wdm.h)

La rutina ZwOpenEnlistment obtiene un identificador para un objeto de inscripción de existente.

Sintaxis

__kernel_entry NTSYSCALLAPI NTSTATUS NtOpenEnlistment(
  [out]          PHANDLE            EnlistmentHandle,
  [in]           ACCESS_MASK        DesiredAccess,
  [in]           HANDLE             ResourceManagerHandle,
  [in]           LPGUID             EnlistmentGuid,
  [in, optional] POBJECT_ATTRIBUTES ObjectAttributes
);

Parámetros

[out] EnlistmentHandle

Puntero a una variable asignada por el autor de la llamada que recibe un identificador de un objeto de inscripción si la llamada a ZwOpenEnlistment se realiza correctamente.

[in] DesiredAccess

Valor de tipo ACCESS_MASKque especifica el acceso solicitado al objeto de inscripción. Para obtener más información sobre cómo especificar este parámetro, vea el parámetro DesiredAccess de ZwCreateEnlistment. Este parámetro no puede ser cero.

[in] ResourceManagerHandle

Identificador de un objeto de Resource Manager obtenido por una llamada anterior a ZwCreateResourceManager o ZwOpenResourceManager.

[in] EnlistmentGuid

Puntero a un GUID que identifica la inscripción. Para obtener más información, vea la siguiente sección Comentarios.

[in, optional] ObjectAttributes

Puntero a una estructura OBJECT_ATTRIBUTES que especifica los atributos del objeto. Use la rutina de InitializeObjectAttributes para inicializar esta estructura, pero especifique solo los parámetros InitializedAttributes de esa rutina y Atributos. Si el autor de la llamada no se ejecuta en un contexto de subproceso del sistema, debe establecer la marca OBJ_KERNEL_HANDLE en el parámetro atributos . Este parámetro es opcional y se puede NULL.

Valor devuelto

ZwOpenEnlistment 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
STATUS_INVALID_HANDLE
El identificador de objeto no es válido.
STATUS_ACCESS_DENIED
El autor de la llamada no tiene el acceso adecuado al objeto de inscripción.
STATUS_INVALID_PARAMETER
El valor del parámetro desiredAccess es cero o el valor del parámetro EnlistmentGuid es NULL.
STATUS_ENLISTMENT_NOT_FOUND
La inscripción que el parámetro EnlistmentGuid especifica no existe para el administrador de recursos que especifica el parámetro RmHandle .
STATUS_ACCESS_DENIED
El valor del parámetro DesiredAccess no es válido.
 

La rutina puede devolver otros valores NTSTATUS de .

Observaciones

Normalmente, un componente TPS llama a ZwOpenEnlistment después de recibir un GUID de inscripción de otro componente tpS que anteriormente había llamado ZwCreateEnlistment. La mayoría de los diseños de TPS no requieren llamar a ZwOpenEnlistment.

Un administrador de recursos que llama a ZwOpenEnlistment debe llamar finalmente a ZwClose para cerrar el identificador del objeto.

Para obtener más información sobre ZwOpenEnlistment, vea Objetos de inscripción.

NtOpenEnlistment y ZwOpenEnlistment son dos versiones de la misma rutina de Servicios del sistema nativo de Windows.

En el caso de las llamadas desde controladores en modo kernel, las NtXxx y Zwversiones de Xxx de una rutina de Servicios del sistema nativo de Windows 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 de NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows Vista y versiones posteriores del sistema operativo.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL PASSIVE_LEVEL
reglas de cumplimiento de DDI HwStorPortProhibitedDIs, PowerIrpDDis

Consulte también

ACCESS_MASK

initializeObjectAttributes

OBJECT_ATTRIBUTES

usar versiones Nt y Zw de las rutinas de servicios del sistema nativo

ZwClose

ZwCreateEnlistment

ZwCreateResourceManager

ZwOpenResourceManager

ZwQueryInformationEnlistment

ZwSetInformationEnlistment