Skip to content

Latest commit

 

History

History
49 lines (30 loc) · 1.9 KB

File metadata and controls

49 lines (30 loc) · 1.9 KB

SystemUuidStr method

Project: System Information Unit.

Unit: PJSysInfo.

Class: TPJBiosInfo

Applies to: ~>5.32

function SystemUuidStr(const UseRFC4122ByteOrdering: Boolean = False):
  string;

Description

Returns the BIOS' universal unique ID number (UUID) as a string formatted according to the one of the two formats defined by the SMBIOS reference specification.

The result string is grouped into fields as specified by RFC4122, i.e. in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, where each x is a hexadecimal digit. The byte order of the digits is determined by the UseRFC4122ByteOrdering parameter.

Requires support for SMBIOS reference specification v2.1 or later.

Parameter:

  • UseRFC4122ByteOrdering -- Flag that specifies the byte ordering used in the returned string.

    When True the returned string is formatted according to RFC4122, with all bytes in network order.

    When False (the default) the string is formatted according PC industry practice, with the 1st three fields of the UUID formatted in little endian byte encoding and the remaining fields formatted in network byte order.

Returns:

  • A string containing the UUID in the required format.

    Special return values:

    • An empty string is returned if any of the following conditions apply:
      • the BIOS is not supported;
      • the BIOS does not specify a UUID;
      • the UUID provided by the BIOS is not 16 bytes long;
      • the BIOS does not support the SMBIOS reference specification v2.1 or later.
    • A string where all hex digits are 0 is returned when the system has no UUID present.
    • A string where all hex digits are F is returned when no UUID is currently present, but one could be set in future.

See also