Project: System Information Unit.
Unit: PJSysInfo.
Class: TPJBiosInfo
Applies to: ~>5.32
function SystemUuidStr(const UseRFC4122ByteOrdering: Boolean = False):
string;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
Truethe 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
0is returned when the system has no UUID present. - A string where all hex digits are
Fis returned when no UUID is currently present, but one could be set in future.
- An empty string is returned if any of the following conditions apply: