Función FsRtlRegisterFileSystemFilterCallbacks (ntifs.h)
Los controladores de filtro del sistema de archivos y los sistemas de archivos llaman a la rutina FsRtlRegisterFileSystemFilterCallbacks para registrar las rutinas de devolución de llamada de notificación que se invocarán cuando el sistema de archivos subyacente realiza determinadas operaciones.
Sintaxis
NTSTATUS FsRtlRegisterFileSystemFilterCallbacks(
[in] _DRIVER_OBJECT *FilterDriverObject,
[in] PFS_FILTER_CALLBACKS Callbacks
);
Parámetros
[in] FilterDriverObject
Puntero al objeto de controlador para el controlador de sistema de archivos o filtro.
[in] Callbacks
Puntero a una estructura FS_FILTER_CALLBACKS que contiene los puntos de entrada de las rutinas de devolución de llamada proporcionadas por el autor de la llamada. Todos los puntos de entrada de devolución de llamada son opcionales y se pueden establecer en NULL.
Valor devuelto
La rutina FsRtlRegisterFileSystemFilterCallbacks puede devolver uno de los siguientes valores de estado:
Código devuelto | Descripción |
---|---|
STATUS_SUCCESS | Las rutinas de devolución de llamada se registraron correctamente. |
STATUS_INSUFFICIENT_RESOURCES | FsRtlRegisterFileSystemFilterCallbacks encontró un error de asignación de grupo al asignar memoria para almacenar la información de devolución de llamada. |
STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY | FsRtlRegisterFileSystemFilterCallbacks completó correctamente una operación FsFilter. |
STATUS_FILE_LOCKED_WITH_ONLY_READERS | El archivo estaba bloqueado y todos los usuarios del archivo solo pueden leer. |
STATUS_FILE_LOCKED_WITH_WRITERS | El archivo estaba bloqueado y al menos un usuario del archivo puede escribir |
STATUS_INVALID_PARAMETER | Uno de los parámetros no es válido. |
Comentarios
Los controladores de filtro del sistema de archivos y del sistema de archivos deben llamar a FsRtlRegisterFileSystemFilterCallbacks desde la rutina DriverEntry del controlador.
FsRtlRegisterFileSystemFilterCallbacks registra las rutinas de devolución de llamada de notificación especificadas en el parámetro Callbacks que se invocarán cuando se envían solicitudes para determinadas operaciones de archivo al sistema de archivos subyacente.
Los sistemas de archivos llaman a FsRtlRegisterFileSystemFilterCallbacks para establecer el miembro de devolución de llamada PreAcquireForSectionSynchronization de la estructura FS_FILTER_CALLBACKS en lugar de usar la clase AcquireFileForNtCreateSection obsoleta.
Las rutinas de devolución de llamada registradas por FsRtlRegisterFileSystemFilterCallbacks reemplazan las siguientes rutinas de devolución de llamada de E/S rápidas, que están obsoletas y no deben usarse en los controladores de filtro del sistema de archivos:
- AcquireForCcFlush
- AcquireFileForNtCreateSection
- AcquireForModWrite
- ReleaseForCcFlush
- ReleaseFileForNtCreateSection
- ReleaseForModWrite
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |