winioctl.h) (FILE_OBJECTID_BUFFER 结构

包含对象标识符,以及与对象标识符关联的用户定义的元数据。

语法

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;

成员

ObjectId[16]

唯一标识文件或目录所在卷中的标识符。

DUMMYUNIONNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthVolumeId[16]

创建对象标识符时对象所在的卷的标识符;如果该卷当时没有对象标识符,则为零。 在复制操作、移动操作或其他文件操作之后,这可能与对象当前所在的卷的对象标识符不同。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.BirthObjectId[16]

对象在创建时的对象标识符。 在复制操作、移动操作或其他文件操作之后,这可能与目前 ObjectId 成员不同。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.DomainId[16]

保留;必须为零。

DUMMYUNIONNAME.ExtendedInfo[48]

要使用 FSCTL_SET_OBJECT_ID_EXTENDED 设置的用户定义的扩展数据。 使用此数据作为 BirthVolumeIdBirthObjectIdDomainId 成员的替代方法。

注解

对象标识符用于跟踪文件和目录。 它们对大多数应用程序不可见,并且永远不应被应用程序修改。 修改对象标识符可能会导致文件部分(最多包括整个数据量)的数据丢失。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅

FSCTL_CREATE_OR_GET_OBJECT_ID

FSCTL_DELETE_OBJECT_ID

FSCTL_GET_OBJECT_ID

FSCTL_SET_OBJECT_ID

FSCTL_SET_OBJECT_ID_EXTENDED

对象标识符