Share via


FLT_FILE_NAME_OPTIONS

FLT_FILE_NAME_OPTIONS 형식은 파일 이름 정보 쿼리의 이름 형식, 쿼리 메서드 및 플래그를 지정하는 ULONG 값입니다.

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

비트 0~7은 FltGetFileNameFormat 매크로를 사용하여 쿼리할 수 있는 파일 형식을 나타냅니다. 이러한 형식에 대한 설명은 FLT_FILE_NAME_INFORMATION. 현재 다음 값이 정의되어 있습니다.

의미
FLT_FILE_NAME_NORMALIZED 파일의 정규화된 이름입니다.
FLT_FILE_NAME_OPENED 핸들을 이 파일에 열 때 사용된 이름입니다. 이 이름은 정규화되지 않습니다.
FLT_FILE_NAME_SHORT 파일의 짧은 이름(8.3)입니다. 파일의 짧은 이름에는 볼륨 이름, 디렉터리 경로 또는 스트림 이름이 포함되지 않습니다. 이 이름은 정규화되지 않습니다.

비트 8~15는 FltGetFileNameQueryMethod 매크로를 사용하여 쿼리할 수 있는 필터 관리자에서 사용할 파일 이름 쿼리 메서드를 지정합니다. 이러한 값에 대한 설명은 FltGetFileNameInformation을 참조하세요. 현재 다음 값이 정의되어 있습니다.

의미
FLT_FILE_NAME_QUERY_DEFAULT 파일 시스템에 파일 이름을 쿼리하는 것이 현재 안전하지 않은 경우 아무 것도 수행하지 않습니다. 그렇지 않으면 파일 이름 정보에 대한 필터 관리자의 이름 캐시를 쿼리합니다. 캐시에 이름이 없으면 파일 시스템을 쿼리하고 결과를 캐시합니다.
FLT_FILE_NAME_QUERY_CACHE_ONLY 파일 이름 정보에 대한 필터 관리자의 이름 캐시를 쿼리합니다. 파일 시스템을 쿼리하지 마세요.
FLT_FILE_NAME_QUERY_FILESYSTEM_ONLY 파일 시스템에 파일 이름 정보를 쿼리합니다. 필터 관리자의 이름 캐시를 쿼리하지 말고 파일 시스템 쿼리의 결과를 캐시하지 마세요.
FLT_FILE_NAME_QUERY_ALWAYS_ALLOW_CACHE_LOOKUP 파일 이름 정보에 대한 필터 관리자의 이름 캐시를 쿼리합니다. 캐시에 이름이 없고 현재 안전한 경우 파일 시스템에 파일 이름 정보를 쿼리하고 결과를 캐시합니다.

비트 16~23은 현재 사용되지 않습니다.

비트 24~31은 이름 공급자 미니필터에서 파일 이름 플래그를 지정하는 데 사용됩니다. 현재 다음 값이 정의되어 있습니다.

의미
FLT_FILE_NAME_REQUEST_FROM_CURRENT_PROVIDER 이름 공급자 미니필터는 이 플래그를 사용하여 스택의 하위 이름 공급자 필터에 만족하지 않고 이름 쿼리 요청을 자체로 리디렉션해야 함을 나타냅니다.
FLT_FILE_NAME_DO_NOT_CACHE 이 플래그는 이 쿼리에서 검색된 이름을 캐시하면 안 됨을 표시합니다. 이름 공급자 미니필터는 중간 쿼리를 수행하여 이름을 생성할 때 이 플래그를 사용합니다.
FLT_FILE_NAME_ALLOW_QUERY_ON_REPARSE 이름 공급자 미니필터는 이 플래그를 사용하여 STATUS_REPARSE 반환된 경우에도 사후 만들기 경로에서 이름을 쿼리하는 것이 안전하도록 지정할 수 있습니다. FileObject-FileName> 필드가 변경되지 않았는지 확인하는 것은 호출자의 책임입니다. 탑재 지점 또는 기호 링크 재분석 지점과 함께 이 플래그를 사용하지 마세요.

요구 사항

요구 사항 유형 요구 사항
헤더 Fltkernel.h ( Fltkernel.h 포함)

FLT_FILE_NAME_INFORMATION

FltGetDestinationFileNameInformation

FltGetFileNameFormat

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod