Share via


DEVICE_ID (Compact 2013)

3/28/2014

This structure enables you to uniquely identify a device by providing two separate identifiers that are combined to create a single globally unique identifier (GUID) for the device.

Syntax

typedef struct _DEVICE_ID {
  DWORD dwSize;
  DWORD dwPresetIDOffset;
  DWORD dwPresetIDBytes;
  DWORD dwPlatformIDOffset;
  DWORD dwPlatformIDBytes;
} DEVICE_ID, *PDEVICE_ID;

Members

  • dwSize
    Size of the allocated structure and memory for the identifiers.

    The caller must allocate enough memory for the structure and the identifiers.

  • dwPresetIDOffset
    Number of bytes from the beginning of the structure to where the Preset identifier is located.
  • dwPresetIDBytes
    Number of bytes used to store the Preset identifier.

    If this value is set to zero, no Preset identifier is available.

  • dwPlatformIDOffset
    Number of bytes from the beginning of the structure to where the Platform identifier is located.
  • dwPlatformIDBytes
    Number of bytes used to store the Platform identifier.

    If this value is set to zero, no Platform identifier is available.

Remarks

The platform identifier is used to identify one unique hardware platform from another.

The preset identifier is used to identify one unique device type from another.

For example, two different devices from the same manufacturer have two different platform identifiers, but they have the same preset identifier.

You are responsible for ensuring that the combination of preset and platform identifiers is unique across different products.

Note

A duplicate definition of DEVICEID is declared, where applicable, under uniqueid.h.

Requirements

Header

pkfuncs.h

See Also

Reference

Kernel Structures

Other Resources

OAL Structures
IOCTL_HAL_GET_DEVICEID (deprecated)