Función ZwFlushBuffersFileEx (ntifs.h)
Un controlador de filtro del sistema de archivos llama a la rutina ZwFlushBuffersFileEx para enviar una solicitud de vaciado de un archivo determinado al sistema de archivos. Se puede establecer una marca de operación de vaciado opcional para controlar cómo se escriben los datos de archivo en el almacenamiento.
Sintaxis
NTSYSAPI NTSTATUS ZwFlushBuffersFileEx(
[in] HANDLE FileHandle,
ULONG FLags,
PVOID Parameters,
ULONG ParametersSize,
[out] PIO_STATUS_BLOCK IoStatusBlock
);
Parámetros
[in] FileHandle
Identificador devuelto por ZwCreateFile o ZwOpenFile para el archivo cuyos búferes se vaciarán. Este parámetro es necesario y no se puede null.
FLags
Marcas de operación de vaciado. marcas puede ser 0 o uno de los valores siguientes.
Parameters
Dirección del bloque de estado de E/S del autor de la llamada. Este parámetro es necesario y no se puede null.
ParametersSize
Tamaño, en bytes, del bloque de parámetros.
[out] IoStatusBlock
Dirección del bloque de estado de E/S del autor de la llamada. Este parámetro es necesario y no se puede null.
Valor devuelto
ZwFlushBuffersFileEx devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como uno de los siguientes:
Código devuelto | Descripción |
---|---|
|
El archivo reside en un volumen protegido por escritura; se trata de un código de error. |
|
El archivo reside en un volumen que no está montado actualmente; se trata de un código de error. |
|
El archivo no tiene acceso de escritura ni de anexión. |
Observaciones
Un controlador de filtro del sistema de archivos puede llamar a ZwFlushBuffersFileEx para emitir una solicitud de IRP_MJ_FLUSH_BUFFERS al sistema de archivos para un archivo determinado. La operación de vaciado es sincrónica.
Los controladores de minifiltro deben llamar a FltFlushBuffers en lugar de llamar a ZwFlushBuffersFileEx.
Los autores de llamadas de ZwFlushBuffersFileEx deben ejecutarse en IRQL = PASSIVE_LEVEL y con API de kernel especiales habilitadas.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 8. |
de la plataforma de destino de |
Universal |
encabezado de |
ntifs.h (incluya Ntifs.h) |
biblioteca de |
NtosKrnl.lib |
DLL de |
NtosKrnl.exe |
irQL | PASSIVE_LEVEL (consulte la sección Comentarios). |
Consulte también
fltFlushBuffers de
usar versiones Nt y Zw de las rutinas de servicios del sistema nativo