FILE_ID_BOTH_DIR_INFO 구조체(winbase.h)

지정된 디렉터리의 파일에 대한 정보를 포함합니다. 디렉터리 핸들에 사용됩니다. GetFileInformationByHandleEx를 호출할 때만 사용합니다. GetFileInformationByHandleEx에 대한 각 호출에 대해 반환되는 파일 수는 함수에 전달되는 버퍼의 크기에 따라 달라집니다. 동일한 핸들에서 GetFileInformationByHandleEx 에 대한 후속 호출은 마지막 파일이 반환된 후 열거형 작업을 다시 시작합니다.

구문

typedef struct _FILE_ID_BOTH_DIR_INFO {
  DWORD         NextEntryOffset;
  DWORD         FileIndex;
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER LastWriteTime;
  LARGE_INTEGER ChangeTime;
  LARGE_INTEGER EndOfFile;
  LARGE_INTEGER AllocationSize;
  DWORD         FileAttributes;
  DWORD         FileNameLength;
  DWORD         EaSize;
  CCHAR         ShortNameLength;
  WCHAR         ShortName[12];
  LARGE_INTEGER FileId;
  WCHAR         FileName[1];
} FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;

멤버

NextEntryOffset

반환되는 다음 FILE_ID_BOTH_DIR_INFO 구조체에 대한 오프셋입니다. 이 항목을 따르는 다른 항목이 없으면 0을 포함합니다.

FileIndex

부모 디렉터리 내 파일의 바이트 오프셋입니다. 이 멤버는 부모 디렉터리 내의 파일 위치가 고정되지 않고 정렬 순서를 유지하기 위해 언제든지 변경할 수 있는 NTFS와 같은 파일 시스템에 대해 정의되지 않습니다.

CreationTime

파일이 만들어진 시간입니다.

LastAccessTime

파일에 마지막으로 액세스한 시간입니다.

LastWriteTime

파일이 마지막으로 기록된 시간입니다.

ChangeTime

파일이 마지막으로 변경된 시간입니다.

EndOfFile

파일 시작부터 파일 끝까지의 바이트 오프셋인 절대 새 파일 끝 위치입니다. 이 값은 0부터 시작하므로 실제로 파일의 첫 번째 무료 바이트를 나타냅니다. 즉, EndOfFile 은 파일의 마지막 유효한 바이트 바로 뒤에 있는 바이트에 대한 오프셋입니다.

AllocationSize

파일에 할당된 바이트 수입니다. 이 값은 일반적으로 기본 물리적 디바이스의 섹터 또는 클러스터 크기의 배수입니다.

FileAttributes

파일 특성입니다. 이 멤버는 다음 특성의 유효한 조합일 수 있습니다.

FILE_ATTRIBUTE_ARCHIVE(0x00000020)

FILE_ATTRIBUTE_COMPRESSED(0x00000800)

FILE_ATTRIBUTE_DIRECTORY(0x00000010)

FILE_ATTRIBUTE_HIDDEN(0x00000002)

FILE_ATTRIBUTE_NORMAL(0x00000080)

FILE_ATTRIBUTE_READONLY(0x00000001)

FILE_ATTRIBUTE_SYSTEM(0x00000004)

FILE_ATTRIBUTE_TEMPORARY(0x00000100)

FileNameLength

파일 이름의 길이입니다.

EaSize

파일에 대한 확장 특성의 크기입니다.

ShortNameLength

ShortName의 길이입니다.

ShortName[12]

파일의 짧은 8.3 파일 명명 규칙(예: "FILENAME.TXT") 이름입니다.

FileId

파일 ID입니다.

FileName[1]

파일 이름 문자열의 첫 번째 문자입니다. 이 뒤에는 나머지 문자열이 메모리에서 수행됩니다.

설명

이 정보를 쿼리하는 데 특정 액세스 권한이 필요하지 않습니다.

파일 ID라고도 하는 파일 참조 번호는 정적 파일 시스템 내에서만 고유하도록 보장됩니다. 파일 시스템은 자유롭게 다시 사용할 수 있으므로 시간이 지남에 따라 고유하지 않을 수 있습니다. 일정하게 유지되는 것도 보장되지 않습니다. 예를 들어 FAT 파일 시스템은 디스크에 있는 파일 디렉터리 항목 레코드(DIRENT)의 바이트 오프셋에서 파일에 대한 파일 참조 번호를 생성합니다. 조각 모음은 이 바이트 오프셋을 변경할 수 있습니다. 따라서 FAT 파일 참조 번호는 시간이 지남에 따라 변경 될 수 있습니다.

모든 날짜와 시간은 절대 시스템 시간 형식입니다. 절대 시스템 시간은 1601년 초부터 100나노초 간격의 수입니다.

FILE_ID_BOTH_DIR_INFO 구조체는 DWORDLONG (8 바이트) 경계에 맞춰야 합니다. 버퍼에 이러한 구조체가 두 개 이상 포함된 경우 마지막을 제외한 각 항목의 NextEntryOffset 값은 8 바이트 경계에 해당합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱 | UWP 앱]
머리글 winbase.h(Windows.h 포함)
재배포 가능 파일 Windows Server 2003 및 Windows XP에서 Windows SDK.

추가 정보

FILE_INFO_BY_HANDLE_CLASS

파일 특성 상수

GetFileInformationByHandleEx