FILE_ID_DESCRIPTOR structure (winbase.h)

Specifies the type of ID that is being used.

Syntax

typedef struct FILE_ID_DESCRIPTOR {
  DWORD        dwSize;
  FILE_ID_TYPE Type;
  union {
    LARGE_INTEGER FileId;
    GUID          ObjectId;
    FILE_ID_128   ExtendedFileId;
  } DUMMYUNIONNAME;
} FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;

Members

dwSize

The size of this FILE_ID_DESCRIPTOR structure.

Type

The discriminator for the union indicating the type of identifier that is being passed.

Value Meaning
FileIdType
0
Use the FileId member of the union.
ObjectIdType
1
Use the ObjectId member of the union.
ExtendedFileIdType
2
Use the ExtendedFileId member of the union.

Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 and Windows Server 2008 R2:  This value is not supported before Windows 8 and Windows Server 2012.

DUMMYUNIONNAME

DUMMYUNIONNAME.FileId

The ID of the file to open.

DUMMYUNIONNAME.ObjectId

The ID of the object to open.

DUMMYUNIONNAME.ExtendedFileId

A FILE_ID_128 structure containing the 128-bit file ID of the file. This is used on ReFS file systems.

Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 and Windows Server 2008 R2:  This member is not supported before Windows 8 and Windows Server 2012.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header winbase.h (include Windows.h)
Redistributable Windows SDK on Windows Server 2003 and Windows XP.

See also

FILE_ID_128

FILE_ID_TYPE

File Management Structures

OpenFileById