FltTagFileEx 함수(fltkernel.h)
FltTagFileEx 는 파일 또는 디렉터리에 재문 분석 지점을 설정합니다.
구문
NTSTATUS FLTAPI FltTagFileEx(
PFLT_INSTANCE InitiatingInstance,
PFILE_OBJECT FileObject,
ULONG FileTag,
GUID *Guid,
PVOID DataBuffer,
USHORT DataBufferLength,
ULONG ExistingFileTag,
GUID *ExistingGuid,
ULONG Flags
);
매개 변수
InitiatingInstance
이 I/O 요청을 시작한 미니 필터 드라이버 인스턴스에 대한 불투명 포인터입니다. 이 매개 변수는 필수이며 NULL 일 수 없습니다.
FileObject
재문 분석 지점을 설정할 파일 또는 디렉터리에 대한 파일 개체에 대한 포인터입니다. FILE_WRITE_DATA 액세스를 위해 파일 개체를 열어야 합니다. 이 매개 변수는 필수이며 NULL 일 수 없습니다.
FileTag
재문 분석 지점 태그입니다. ntifs.h 에 정의된 IO_REPARSE_TAG_XXX 값 중 하나일 수 있습니다.
Guid
재문 분석 지점을 고유하게 식별하는 GUID입니다. FileTag 가 타사 태그인 경우 이 매개 변수는 필수이며 NULL 일 수 없습니다. 기존 재문 분석 태그가 수정되는 경우 이 매개 변수에 지정된 GUID가 수정할 재문 분석 지점의 GUID와 일치해야 합니다.
DataBuffer
재문 분석 지점에 대한 사용자 정의 데이터를 포함하는 버퍼에 대한 포인터입니다.
DataBufferLength
DataBuffer 가 가리키는 버퍼의 크기(바이트)입니다.
ExistingFileTag
태그를 바꿔야 하는 경우 파일의 기존 태그입니다. 이 매개 변수를 0으로 설정하여 아직 없는 파일에 재구문 태그를 설정해야 합니다.
ExistingGuid
기존 재문 분석 지점을 고유하게 식별하는 GUID입니다. ExistingFileTag 가 타사 태그이고 0이 아닌 경우 이 매개 변수는 NULL 이 아니어야 합니다.
Flags
ntifs.h 에 정의된 REPARSE_DATA_BUFFER_EX_ XXX 플래그를 지정합니다.
반환 값
이 함수는 STATUS_SUCCESS 또는 다음과 같은 적절한 NTSTATUS 값을 반환합니다.
| 반환 코드 | Description |
|---|---|
| STATUS_IO_REPARSE_TAG_MISMATCH | ExistingFileTag 에 지정된 태그 값이 기존 태그 값과 일치하지 않습니다. |
| STATUS_REPARSE_ATTRIBUTE_CONFLICT | Microsoft 태그가 아닌 기존 재문 분석 지점의 경우 ExistingFileTag 는 기존 태그 값과 일치하지만 Guid가 기존 Guid 와 일치하지 않습니다. |
설명
미니 필터 드라이버는 재문 분석 지점을 설정하기 위해 FSCTL_SET_REPARSE_POINT_EX 대신 FltTagFileEx 를 사용해야 합니다.
모든 파일 시스템에서 재문 분석 지점을 지원하지는 않습니다. 예를 들어 NTFS 및 ReFS 파일 시스템은 이를 지원하지만 FAT 파일 시스템은 지원하지 않습니다. 미니 필터 드라이버는 FltQueryVolumeInformation을 호출하고, FsInformation 매개 변수에 FileFsAttributeInformation을 지정하고 , 반환된 FILE_FS_ATTRIBUTE_INFORMATION 구조에서 FILE_SUPPORTS_REPARSE_POINTS 비트 플래그를 검사하여 파일 시스템이 재분석 지점을 지원하는지 여부를 확인할 수 있습니다.
기존 재문 분석 지점을 제거하려면 FltUntagFile을 호출합니다.
재문 분석 지점에 대한 자세한 내용은 Microsoft Windows SDK 설명서를 참조하세요.
요구 사항
| 헤더 | fltkernel.h |
참조
피드백
다음에 대한 사용자 의견 제출 및 보기