FltSetInformationFile 지정된 파일에 대한 정보를 설정합니다.
통사론
NTSTATUS FLTAPI FltSetInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass
);
매개 변수
[in] Instance
호출자에 대한 불투명 인스턴스 포인터입니다. 이 매개 변수는 필수이며 NULL 수 없습니다.
[in] FileObject
파일에 대한 파일 개체 포인터입니다. 이 매개 변수는 필수이며 NULL 수 없습니다.
[in] FileInformation
파일에 대해 설정할 정보를 포함하는 호출자 할당 버퍼에 대한 포인터입니다. FileInformationClass 매개 변수는 정보 유형을 지정합니다. 이 매개 변수는 필수이며 NULL 수 없습니다.
[in] Length
FileInformation 버퍼의 크기(바이트)입니다.
[in] FileInformationClass
파일에 대해 설정할 정보의 형식을 지정합니다. 다음 값이 정의됩니다.
| 값 | 의미 |
|---|---|
| fileAllocationInformation | 파일에 대한 FILE_ALLOCATION_INFORMATION 설정합니다. |
| FileBasicInformation | 파일에 대한 FILE_BASIC_INFORMATION 설정합니다. |
| fileDispositionInformation | 파일에 대한 FILE_DISPOSITION_INFORMATION 설정합니다. |
| FileEndOfFileInformation | 파일에 대한 FILE_END_OF_FILE_INFORMATION 설정합니다. |
| FileLinkInformation | 파일에 대한 FILE_LINK_INFORMATION 설정합니다. |
| FilePositionInformation | 파일에 대한 FILE_POSITION_INFORMATION 설정합니다. |
| fileRenameInformation | 파일에 대한 FILE_RENAME_INFORMATION 설정합니다. 파일 이름 바꾸기에 대한 자세한 내용은 다음 주의 섹션을 참조하세요. |
| fileValidDataLengthInformation | 파일에 대한 FILE_VALID_DATA_LENGTH_INFORMATION 설정합니다. |
반환 값
FltSetInformationFile STATUS_SUCCESS 또는 적절한 NTSTATUS 값을 반환합니다.
발언
미니 필터 드라이버는 fltSetInformationFile 호출하여 지정된 파일에 대한 정보를 설정합니다. 파일은 현재 열려 있어야 합니다.
파일 이름 바꾸기 작업은 FltSetInformationFile전달되는 매개 변수 값에 다음과 같은 제한을 적용합니다. FILE_RENAME_INFORMATION대한 참조 항목에 설명된 대로 파일 또는 디렉터리는 볼륨 내에서만 이름을 바꿀 수 있습니다. 즉, 이름 바꾸기 작업으로 인해 파일 또는 디렉터리가 다른 볼륨으로 이동될 수 없습니다. ZwSetInformationFile달리 FltSetInformationFile FILE_RENAME_INFORMATION 구조체의 내용의 유효성을 검사하지 않습니다. 따라서 FltSetInformationFile 호출자는 파일 또는 디렉터리의 새 이름이 이전 이름과 동일한 볼륨에 있는지 확인합니다.
미니 필터 드라이버는 파일 이름을 바꾸려면 ZwSetInformationFile 아니라 fltSetInformationFile 사용해야 합니다.
요구 사항
| 요구 | 값 |
|---|---|
| 대상 플랫폼 | 보편적 |
| 헤더 | fltkernel.h(Fltkernel.h 포함) |
| 라이브러리 | FltMgr.lib |
| DLL | Fltmgr.sys |
| IRQL | PASSIVE_LEVEL |