USN_RECORD_COMMON_HEADER structure (winioctl.h)

Contains the information for an update sequence number (USN) common header which is common through USN_RECORD_V2, USN_RECORD_V3 and USN_RECORD_V4 structure.

Syntax

typedef struct {
  DWORD RecordLength;
  WORD  MajorVersion;
  WORD  MinorVersion;
} USN_RECORD_COMMON_HEADER, *PUSN_RECORD_COMMON_HEADER;

Members

RecordLength

The total length of a record, in bytes.

Because USN record is a variable size, the RecordLength member should be used when calculating the address of the next record in an output buffer, for example, a buffer that is returned from operations for the DeviceIoControl function that work with different USN record types.

For USN_RECORD_V4 structure, the size in bytes of any change journal record is at most the size of the structure, plus (NumberOfExtents-1) times size of the USN_RECORD_EXTENT.

MajorVersion

The major version number of the change journal software for this record.

For example, if the change journal software is version 4.0, the major version number is 4.

Value Description
2 The structure is a USN_RECORD_V2 structure and the remainder of the structure should be parsed using that layout.
3 The structure is a USN_RECORD_V3 structure and the remainder of the structure should be parsed using that layout.
4 The structure is a [USN_RECORD_V4 structure](ns-winioctl-usn_record_v4.md) and the remainder of the structure should be parsed using that layout.

MinorVersion

The minor version number of the change journal software for this record. For example, if the change journal software is version 4.0, the minor version number is zero.

Requirements

Requirement Value
Minimum supported client Windows 8.1 [desktop apps only]
Minimum supported server Windows Server 2012 R2 [desktop apps only]
Header winioctl.h (include Windows.h)

See also

USN_RECORD_EXTENT

USN_RECORD_V2

USN_RECORD_V3

USN_RECORD_V4 structure

Volume Management Structures