Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This structure contains a device identifier.

This structure is used to retrieve information about the current device by IDirectDraw::GetDeviceIdentifier.

Syntax

typedef struct _DDDEVICEIDENTIFIER {
  wchar_t 
szDriver[MAX_DDDEVICEID_STRING];
  wchar_t 
szDescription[MAX_DDDEVICEID_STRING];
  LARGE_INTEGER 
liDriverVersion;
  DWORD 
dwVendorId;
  DWORD 
dwDeviceId;
  DWORD 
dwSubSysId;
  DWORD 
dwRevision;
  GUID 
guidDeviceIdentifier;
} DDDEVICEIDENTIFIER, *LPDDDEVICEIDENTIFIER;

Members

szDriver[MAX_DDDEVICEID_STRING]

A wchar_t string that contains the name of the driver to present to the user. This should not be used to identify a particular driver because many different strings may be associated with the same device and driver from different vendors. The length of this string is MAX_DDEVICEID_STRING.

szDescription[MAX_DDDEVICEID_STRING]

A wchar_t string that contains a description of the driver to present to the user. This should not be used to identify a particular driver because many different strings may be associated with the same device and driver from different vendors. The length of this string is MAX_DDDEVICEID_STRING.

liDriverVersion

A LARGE_INTEGER value that identifies the version of the Microsoft® DirectDraw® driver. It is legal to do < and > comparisons on the 64-bit signed integer value. However, exercise caution if you use this element to identify problematic drivers. Instead, you should use the DeviceIdentifier member.

The following psuedocode example illustrates the version format encoded in this member.

Copy Code
Product = HIWORD(DriverVersion.HighPart)
Version = LOWORD(DriverVersion.HighPart)
SubVersion = HIWORD(DriverVersion.LowPart)
Build = LOWORD(DriverVersion.LowPart)

For more information on the HIWORD macro, the LOWORD macro, and the LARGE_INTEGER structure, see the Microsoft Platform Software Development Kit (SDK) .

dwVendorId

A DWORD value that helps identify a particular chip set. Query this member to identify the manufacturer. The value may be zero if unknown.

dwDeviceId

A DWORD value that helps identify a particular chip set. Query this member to identify the type of chip set. The value may be zero if unknown.

dwSubSysId

A DWORD value that helps identify a particular chip set. Query this member to identify the subsystem, typically the particular board. The value may be zero if unknown. .

dwRevision

A DWORD value that helps identify a particular chip set. Query this member to identify the revision level of the chip set. The value may be zero if unknown.

guidDeviceIdentifier

A GUID that uniquely identifies for the driver and chip set pair. Query this member to track changes to the driver and chip set in order to generate a new profile for the graphics subsystem. DeviceIdentifier can also be used to identify particular problematic drivers.

Remarks

The VendorId, DeviceId, SubSysId, and Revisionmembers can be used in tandem to identify particular chip sets. However, use these members with caution because they can be used and interpreted differently by different hardware manufacturers.

Requirements

Header ddraw.h
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later