FILE_OBJECTID_BUFFER structure (winioctl.h)
Contains an object identifier and user-defined metadata associated with the object identifier.
Syntax
typedef struct _FILE_OBJECTID_BUFFER {
BYTE ObjectId[16];
union {
struct {
BYTE BirthVolumeId[16];
BYTE BirthObjectId[16];
BYTE DomainId[16];
} DUMMYSTRUCTNAME;
BYTE ExtendedInfo[48];
} DUMMYUNIONNAME;
} FILE_OBJECTID_BUFFER, *PFILE_OBJECTID_BUFFER;
Members
ObjectId[16]
The identifier that uniquely identifies the file or directory within the volume on which it resides.
DUMMYUNIONNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthVolumeId[16]
The identifier of the volume on which the object resided when the object identifier was created, or zero if the volume had no object identifier at that time. After copy operations, move operations, or other file operations, this may not be the same as the object identifier of the volume on which the object presently resides.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthObjectId[16]
The object identifier of the object at the time it was created. After copy operations, move operations, or other file operations, this may not be the same as the ObjectId member at present.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.DomainId[16]
Reserved; must be zero.
DUMMYUNIONNAME.ExtendedInfo[48]
User-defined extended data to be set with FSCTL_SET_OBJECT_ID_EXTENDED. Use this data as an alternative to the BirthVolumeId, BirthObjectId, and DomainId members.
Remarks
Object identifiers are used to track files and directories. They are invisible to most applications and should never be modified by applications. Modifying an object identifier can result in the loss of data from portions of a file, up to and including entire volumes of data.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows XP [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Header | winioctl.h (include Windows.h) |