FLT_FILE_NAME_OPTIONS

El tipo FLT_FILE_NAME_OPTIONS es un valor ULONG que especifica el formato de nombre, el método de consulta y las marcas de una consulta de información de nombre de archivo.

typedef ULONG FLT_FILE_NAME_OPTIONS;
#define FLT_VALID_FILE_NAME_FORMATS                       0x000000ff
    #define FLT_FILE_NAME_NORMALIZED                      0x00000001
    #define FLT_FILE_NAME_OPENED                          0x00000002
    #define FLT_FILE_NAME_SHORT                           0x00000003
#define FLT_VALID_FILE_NAME_QUERY_METHODS                 0x0000ff00
    #define FLT_FILE_NAME_QUERY_DEFAULT                   0x00000100
    #define FLT_FILE_NAME_QUERY_CACHE_ONLY                0x00000200
    #define FLT_FILE_NAME_QUERY_FILESYSTEM_ONLY           0x00000300
    #define FLT_FILE_NAME_QUERY_ALWAYS_ALLOW_CACHE_LOOKUP 0x00000400
#define FLT_VALID_FILE_NAME_FLAGS                         0xff000000
    #define FLT_FILE_NAME_REQUEST_FROM_CURRENT_PROVIDER   0x01000000
    #define FLT_FILE_NAME_DO_NOT_CACHE                    0x02000000
    #define FLT_FILE_NAME_ALLOW_QUERY_ON_REPARSE          0x04000000

Los bits del 0 al 7 indican el formato de archivo, que se puede consultar mediante la macro FltGetFileNameFormat . Para obtener una explicación de estos formatos, consulte FLT_FILE_NAME_INFORMATION. Actualmente se definen los siguientes valores.

Value Significado
FLT_FILE_NAME_NORMALIZED Nombre normalizado del archivo.
FLT_FILE_NAME_OPENED Nombre que se usó cuando se abrió el identificador en este archivo. Este nombre no se normaliza.
FLT_FILE_NAME_SHORT Nombre corto (8.3) del archivo. El nombre corto de un archivo no incluye el nombre del volumen, la ruta de acceso del directorio ni el nombre de la secuencia. Este nombre no se normaliza.

Los bits de 8 a 15 especifican el método de consulta de nombre de archivo que usará el Administrador de filtros, que se puede consultar mediante la macro FltGetFileNameQueryMethod . Para obtener una explicación de estos valores, vea FltGetFileNameInformation. Actualmente se definen los siguientes valores.

Value Significado
FLT_FILE_NAME_QUERY_DEFAULT Si actualmente no es seguro consultar el sistema de archivos para el nombre de archivo, no haga nada. De lo contrario, consulte la memoria caché de nombres del Administrador de filtros para obtener la información del nombre de archivo. Si el nombre no se encuentra en la memoria caché, consulte el sistema de archivos y almacene en caché el resultado.
FLT_FILE_NAME_QUERY_CACHE_ONLY Consulte la memoria caché de nombres del Administrador de filtros para obtener la información del nombre de archivo. No consulte el sistema de archivos.
FLT_FILE_NAME_QUERY_FILESYSTEM_ONLY Consulte el sistema de archivos para obtener la información del nombre de archivo. No consulte la caché de nombres del Administrador de filtros y no almacene en caché el resultado de la consulta del sistema de archivos.
FLT_FILE_NAME_QUERY_ALWAYS_ALLOW_CACHE_LOOKUP Consulte la memoria caché de nombres del Administrador de filtros para obtener la información del nombre de archivo. Si el nombre no se encuentra en la memoria caché y actualmente es seguro hacerlo, consulte el sistema de archivos para obtener la información del nombre de archivo y almacenar en caché el resultado.

Los bits de 16 a 23 no se usan actualmente.

Los minifiltros del proveedor de nombres usan bits de 24 a 31 para especificar las marcas de nombre de archivo. Actualmente se definen los siguientes valores.

Value Significado
FLT_FILE_NAME_REQUEST_FROM_CURRENT_PROVIDER Un minifiltro de proveedor de nombres puede usar esta marca para indicar que se debe redirigir una solicitud de consulta de nombre a sí misma en lugar de ser satisfecho por los filtros del proveedor de nombres inferiores en la pila.
FLT_FILE_NAME_DO_NOT_CACHE Esta marca indica que el nombre recuperado de esta consulta no debe almacenarse en caché. Los minifiltros del proveedor de nombres usan esta marca a medida que realizan consultas intermedias para generar un nombre.
FLT_FILE_NAME_ALLOW_QUERY_ON_REPARSE Un minifiltro de proveedor de nombres puede usar esta marca para especificar que es seguro consultar el nombre en la ruta de acceso posterior a la creación incluso si se devolvió STATUS_REPARSE. Es responsabilidad del autor de la llamada asegurarse de que el campo FileObject-FileName> no se ha cambiado. No use esta marca con puntos de montaje o puntos de reanálisis de vínculos simbólicos.

Requisitos

Tipo de requisito Requisito
Encabezado Fltkernel.h (incluya Fltkernel.h)

FLT_FILE_NAME_INFORMATION

FltGetDestinationFileNameInformation

FltGetFileNameFormat

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod