다음을 통해 공유


FILE_NOTIFY_EXTENDED_INFORMATION 구조체(ntifs.h)

FILE_NOTIFY_EXTENDED_INFORMATION DIRECTORY_NOTIFY_INFORMATION_CLASS DirectoryNotifyExtendedInformation인 경우 IRP_MN_NOTIFY_CHANGE_DIRECTORY 부 함수 코드를 사용하여 IRP_MJ_DIRECTORY_CONTROL 요청에 대한 응답으로 디렉터리 변경에 대한 정보를 제공합니다.

구문

typedef struct _FILE_NOTIFY_EXTENDED_INFORMATION {
  ULONG         NextEntryOffset;
  ULONG         Action;
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastModificationTime;
  LARGE_INTEGER LastChangeTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER AllocatedLength;
  LARGE_INTEGER FileSize;
  ULONG         FileAttributes;
  union {
    ULONG ReparsePointTag;
    ULONG EaSize;
  } DUMMYUNIONNAME;
  LARGE_INTEGER FileId;
  LARGE_INTEGER ParentFileId;
  ULONG         FileNameLength;
  WCHAR         FileName[1];
} FILE_NOTIFY_EXTENDED_INFORMATION, *PFILE_NOTIFY_EXTENDED_INFORMATION;

멤버

NextEntryOffset

다음 레코드로 이동하려면 건너뛰어야 하는 바이트 수입니다. 값이 0이면 이것이 마지막 레코드임을 나타냅니다.

Action

발생한 변경 유형입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
FILE_ACTION_ADDED(0x00000001) 파일이 디렉터리에 추가되었습니다.
FILE_ACTION_REMOVED(0x00000002) 파일이 디렉터리에서 제거되었습니다.
FILE_ACTION_MODIFIED(0x00000003) 디렉터리가 수정되었습니다. 이는 타임스탬프를 변경하거나 특성을 변경할 수 있습니다.
FILE_ACTION_RENAMED_OLD_NAME(0x00000004) 디렉터리의 이름이 바뀌었으며 이전 이름입니다.
FILE_ACTION_RENAMED_NEW_NAME(0x00000005) 디렉터리의 이름이 바뀌었으며 새 이름입니다.

CreationTime

디렉터리 또는 파일이 만들어지고 파일 시스템에 추가된 날짜 및 시간입니다.

LastModificationTime

디렉터리 또는 파일의 콘텐츠가 파일 시스템에서 마지막으로 수정된 날짜 및 시간입니다.

LastChangeTime

디렉터리 또는 파일의 메타데이터 또는 콘텐츠가 파일 시스템에서 마지막으로 변경된 날짜 및 시간입니다.

LastAccessTime

파일 시스템에서 디렉터리 또는 파일에 마지막으로 액세스한 날짜 및 시간입니다.

AllocatedLength

할당된 파일 크기(바이트)입니다.

FileSize

디렉터리 또는 파일의 새 크기(바이트)이거나 크기가 변경되지 않은 경우 이전 크기입니다.

FileAttributes

파일 특성- 다음의 유효한 조합일 수 있습니다.

  • FILE_ATTRIBUTE_READONLY
  • FILE_ATTRIBUTE_HIDDEN
  • FILE_ATTRIBUTE_SYSTEM
  • FILE_ATTRIBUTE_DIRECTORY
  • FILE_ATTRIBUTE_ARCHIVE
  • FILE_ATTRIBUTE_NORMAL
  • FILE_ATTRIBUTE_TEMPORARY
  • FILE_ATTRIBUTE_COMPRESSED

DUMMYUNIONNAME

DUMMYUNIONNAME.ReparsePointTag

디렉터리 또는 파일에 대한 재분석 지점의 식별자 태그입니다.

DUMMYUNIONNAME.EaSize

파일에 대한 확장 특성(EA)의 결합 길이(바이트)입니다.

FileId

디렉터리 또는 파일의 식별자입니다. 이 번호는 생성되고 파일 시스템에 의해 파일에 할당됩니다.

ParentFileId

파일의 부모 디렉터리의 식별자입니다.

FileNameLength

레코드의 파일 이름 부분 크기(바이트)입니다. 이 값에는 종료 null 문자가 포함되지 않습니다.

FileName[1]

디렉터리 핸들을 기준으로 파일 이름을 포함하는 가변 길이 필드입니다. 파일 이름은 유니코드 문자 형식이며 null로 종료되지 않습니다.

요구 사항

요구 사항
헤더 ntifs.h

추가 정보

DIRECTORY_NOTIFY_INFORMATION_CLASS

IRP_MJ_DIRECTORY_CONTROL

ZwNotifyChangeDirectoryFileEx