Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
FltQueryInformationFile recupera información de un archivo determinado.
Syntax
NTSTATUS FLTAPI FltQueryInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass,
[out, optional] PULONG LengthReturned
);
Parameters
[in] Instance
Puntero de instancia opaco para el autor de la llamada. Este parámetro es necesario y no se puede null.
[in] FileObject
Puntero de objeto de archivo para el archivo. Este parámetro es necesario y no se puede null.
[out] FileInformation
Puntero a un búfer asignado por el autor de la llamada que recibe información sobre el archivo. El parámetro FileInformationClass especifica el tipo de información. Este parámetro es necesario y no se puede null.
[in] Length
Tamaño, en bytes, del búfer de FileInformation.
[in] FileInformationClass
Valor FILE_INFORMATION_CLASS que especifica el tipo de información de archivo que se va a devolver en el búfer de FileInformation.
[out, optional] LengthReturned
Puntero a una variable asignada por el autor de la llamada que recibe el tamaño, en bytes, de la información devuelta en el búfer de FileInformation. Este parámetro es opcional y se puede NULL.
Return value
fltQueryInformationFile devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como el siguiente:
| Return code | Description |
|---|---|
|
El archivo reside en un volumen que no está montado actualmente. Se trata de un código de error. |
Remarks
Un controlador de minifiltro llama a fltQueryInformationFile para recuperar información del archivo identificado por FileObject. El archivo debe estar abierto actualmente.
FltQueryInformationFile devuelve cero en cualquier miembro de una estructura de FILE_XXX_INFORMATION que no es compatible con un sistema de archivos determinado.
Los autores de llamadas de FltQueryInformationFile deben ejecutarse en IRQL = PASSIVE_LEVEL y con las API de kernel especiales habilitadas.
NOTA: No llamar a esta rutina con un valor IRP de nivel superior no NULL, ya que esto puede provocar un interbloqueo del sistema.
Requirements
| Requirement | Value |
|---|---|
| Target Platform | Universal |
| Header | fltkernel.h (incluya Fltkernel.h) |
| Library | FltMgr.lib |
| DLL | Fltmgr.sys |
| IRQL | PASSIVE_LEVEL (consulte la sección Comentarios) |