다음을 통해 공유


IRP_MJ_QUERY_OPEN 공용 구조체에 대한 FLT_PARAMETERS

다음 공용 구조체 구성 요소는 작업에 대한 FLT_IO_PARAMETER_BLOCK 구조체의 MajorFunction 필드가 IRP_MJ_QUERY_OPEN 경우에 사용됩니다.

구문

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    PIRP                   Irp;
    PVOID                  FileInformation;
    PULONG                 Length;
    FILE_INFORMATION_CLASS FileInformationClass;
  } QueryOpen;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

멤버

  • Irp: 이 작업과 연결된 IRP에 대한 포인터입니다.

  • FileInformation: 루틴이 파일 개체에 대한 요청된 정보를 쓰는 호출자 할당 버퍼에 대한 포인터입니다. FileInformationClass 멤버는 호출자가 요청하는 정보 유형을 지정합니다.

  • 길이: FileInformation에서 가리키는 버퍼의 크기(바이트)에 대한 포인터입니다.

  • FileInformationClass: FileInformation이 가리키는 버퍼 에서 파일에 대해 반환할 정보의 형식을 지정합니다. 디바이스 및 중간 드라이버는 다음 FILE_INFORMATION_CLASS 값 중 어느 것을 지정할 수 있습니다. 다른 값으로 인해 호출이 실패하고 PreQueryOpen/PostQueryOpen 호출에 전달되지 않아야 합니다.

    FILE_INFORMATION_CLASS 값 반환된 정보 유형
    FileStatInformation FILE_STAT_INFORMATION 구조체입니다. 이 구조에는 액세스 마스크가 포함되어 있습니다. 액세스 마스크에 대한 자세한 내용은 ACCESS_MASK 참조하세요.
    FileStatLxInformation FILE_STAT_LX_INFORMATION 구조체입니다. 이 구조에는 액세스 마스크가 포함되어 있습니다. 액세스 마스크에 대한 자세한 내용은 ACCESS_MASK 참조하세요.
    FileCaseSensitiveInformation FILE_CASE_SENSITIVE_INFORMATION 구조체입니다.
    FileStatBasicInformation FILE_STAT_BASIC_INFORMATION 구조체입니다.

설명

IRP_MJ_QUERY_OPEN 작업에 대한 FLT_PARAMETERS 구조에는 콜백 데이터(FLT_CALLBACK_DATA) 구조체로 표현되는 QueryOpen 작업에 대한 매개 변수가 포함됩니다. FLT_IO_PARAMETER_BLOCK 구조체에 포함되어 있습니다.

IRP_MJ_QUERY_OPEN 파일 시스템(FSFilter) 콜백 작업입니다. 필터는 각각 FLT_PREOP_DISALLOW_FSFILTER_IO 및 FLT_POSTOP_DISALLOW_FSFILTER_IO 사용하여 작업 전 콜백사후 작업 콜백 모두에서 작업을 거부할 수 있습니다.

파일 시스템이 IO_STATUS 블록의 정보 필드를 채우지 않습니다. 필터는 호출 후 이 값을 검사하면 안 됩니다.

FSFilter 콜백 작업에 대한 자세한 내용은 FsRtlRegisterFileSystemFilterCallbacks에 대한 참조 항목을 참조하세요.

요구 사항

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

참고 항목

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

FsRtlRegisterFileSystemFilterCallbacks