Función RxLockEnumerator (rxprocs.h)

Se llama a RxLockEnumerator desde un minidirector de red para enumerar los bloqueos de archivo en un FCB.

Sintaxis

BOOLEAN RxLockEnumerator(
  [in, out] IN OUT PMRX_SRV_OPEN SrvOpen,
  [in, out] IN OUT PVOID         *ContinuationHandle,
  [out]     OUT PLARGE_INTEGER   FileOffset,
  [out]     OUT PLARGE_INTEGER   LockRange,
  [out]     OUT PBOOLEAN         IsLockExclusive
);

Parámetros

[in, out] SrvOpen

Puntero a la estructura SRV_OPEN del FCB que se va a enumerar.

[in, out] ContinuationHandle

Puntero a un identificador pasado hacia atrás y hacia delante que representa el estado de la enumeración. Si este parámetro es un puntero NULL , este es el inicio de una enumeración de bloqueo.

[out] FileOffset

Puntero al desplazamiento de archivo del bloqueo devuelto.

[out] LockRange

Puntero al intervalo de bloqueo del bloqueo devuelto.

[out] IsLockExclusive

Puntero a un valor BOOLEAN que indica si el bloqueo devuelto es un bloqueo exclusivo.

Valor devuelto

RxLockEnumerator devuelve TRUE si se ejecuta correctamente, lo que indica que los datos de bloqueo devueltos son válidos. La rutina RxLockEnumerator devuelve o FALSE en caso de error cuando no se encuentra ningún dato de bloqueo o se ha alcanzado el final de la lista de bloqueos.

Comentarios

Normalmente, se llama a RxLockEnumerator desde un redirector mínimo de red para enumerar los bloqueos de archivo en un FCB. RxLockEnumerator obtiene un bloqueo en cada llamada. por lo tanto, el autor de la llamada debe mantener internamente el estado de enumeración. Como resultado, solo puede haber un proceso de enumeración en curso en cualquier momento.

La rutina RxLockEnumerator debe asignar memoria de grupo no paginada para enumerar bloqueos. Por lo tanto, RxLockEnumerator puede producir un error si se produce un error en la asignación de memoria.

Requisitos

   
Plataforma de destino Escritorio
Header rxprocs.h (incluya Rxprocs.h, Mrxfcb.h, Fcb.h)
IRQL <= APC_LEVEL

Consulte también

Estructura FCB

Estructura de SRV_OPEN