FILE_OBJECTID_INFORMATION 구조체(ntifs.h)

FILE_OBJECTID_INFORMATION 구조는 NTFS 볼륨의 디렉터리에 있는 파일에 대한 개체 ID 정보를 쿼리하는 데 사용됩니다.

구문

typedef struct _FILE_OBJECTID_INFORMATION {
  LONGLONG FileReference;
  UCHAR    ObjectId[16];
  union {
    struct {
      UCHAR BirthVolumeId[16];
      UCHAR BirthObjectId[16];
      UCHAR DomainId[16];
    } DUMMYSTRUCTNAME;
    UCHAR ExtendedInfo[48];
  } DUMMYUNIONNAME;
} FILE_OBJECTID_INFORMATION, *PFILE_OBJECTID_INFORMATION;

구성원

FileReference

파일에 대한 8 바이트 파일 참조 번호입니다. NTFS는 이 번호를 생성하고 파일을 만들 때 파일에 자동으로 할당합니다.

ObjectId

파일의 16 바이트 파일 개체 ID입니다. NTFS는 이 번호를 생성하고 드라이버 또는 애플리케이션의 요청에 따라 파일에 할당합니다. 파일 개체 ID는 파일이 있는 볼륨 내에서만 고유하도록 보장됩니다.

DUMMYUNIONNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthVolumeId

개체 식별자를 만들 때 파일이 상주하는 볼륨의 개체 식별자이거나, 볼륨에 해당 당시 개체 식별자가 없는 경우 0입니다. 복사 작업, 이동 작업 또는 기타 파일 작업 후에는 개체가 현재 있는 볼륨의 개체 식별자와 다를 수 있습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthObjectId

파일을 만들 때 파일의 개체 식별자입니다. 복사 작업, 이동 작업 또는 기타 파일 작업 후에 는 ObjectId 멤버의 현재 값과 다를 수 있습니다.

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DomainId

예약됨; 는 0이어야 합니다.

DUMMYUNIONNAME.ExtendedInfo

사용자가 제공한 데이터입니다. 이를 사용하여 BirthVolumeID, BirthObjectIDDomainID 멤버를 포함하거나 다른 데이터 구조를 정의할 수 있습니다.

설명

이 정보는 다음 방법 중 하나를 사용하여 쿼리할 수 있습니다.

  • ZwQueryDirectoryFile을 호출하여 FileObjectIdInformation을 FileInformationClass 값으로 전달하고 호출자가 할당한 FILE_OBJECTID_INFORMATION 구조화된 버퍼를 FileInformation 값으로 전달합니다.

  • 주 함수 코드 IRP_MJ_DIRECTORY_CONTROL 및 부 함수 코드 IRP_MN_QUERY_DIRECTORY 사용하여 IRP를 만듭니다.

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

파일 참조 번호 및 파일 개체 ID에 대한 지원은 파일 시스템별입니다. 파일 개체 ID는 Microsoft Windows 2000 이상의 NTFS 볼륨에서만 지원됩니다. NTFS를 사용하면 파일 참조 번호뿐만 아니라 개체 ID로도 파일을 열 수 있습니다.

파일 개체 ID를 사용하는 파일 시스템 필터 드라이버는 모두 파일 개체 ID를 사용하고 조작하는 DFS, Replicator 서비스 및 Distributed Link Tracking 서비스와의 상호 운용성을 테스트해야 합니다.

이 구조체는 LONG(4-byte) 경계에 맞춰야 합니다.

요구 사항

   
지원되는 최소 클라이언트 이 구조는 Microsoft Windows 2000 이상에서 사용할 수 있습니다.
헤더 ntifs.h(Ntifs.h, Fltkernel.h 포함)

참고 항목

FILE_INTERNAL_INFORMATION

IRP_MJ_DIRECTORY_CONTROL

ZwQueryDirectoryFile