Providing System Information (Windows Embedded CE 6.0)

1/5/2010

You can implement OEMIoControl to support IOCTL_HAL_GET_DEVICE_INFO, which provides support for SystemParametersInfo, and queries or sets system-wide parameters and updates the user profile.

When OEMIoControl is called with IOCTL_HAL_GET_DEVICE_INFO in the dwIoControlCode parameter, the operating system (OS) sets the nInBufSize parameter to 4 bytes and passes a system-parameters information (SPI) code in the lpInputBuf parameter. In order to support the SPI code, OEMIoControl must support the following SPI flags.

Value Description

SPI_GETBOOTMENAME

Returns the device BOOTME name (for example, "CEPC53902").

This is synonymous with using PlatformID in IOCTL_HAL_GET_DEVICEID.

SPI_GETGUIDPATTERN

Returns a platform-specific GUID pattern.

SPI_GETOEMINFO

Returns a string containing the model number and manufacturer name.

SPI_GETPLATFORMNAME

Returns a human-readable, not-null text string for the platform (product) release name (for example, "CEPC").

The string must be at least one character and less than 256 characters in length.

SPI_GETPLATFORMTYPE

Returns a string specifying the type of Windows Embedded CE device.

SPI_GETPLATFORMVERSION

Assigns a version number to an OEM OS design. For more information, see Implementation of the SPI_GETPLATFORMVERSION IOCTL.

Returns {{CE_MAJOR_VER, CE_MINOR_VER}}, regardless of platform.

SPI_GETPROJECTNAME

Returns a project description string (for example, "CEBase").

SPI_GETUUID

Returns hardware-unique bytes for the platform. The expected return size is the size of a GUID: 16 bytes.

Although Windows Embedded CE does not restrict the lengths of the returned strings, long strings might be unsuitable for display on some target devices or for communicating between applications.

Also, be sure to use product names that are unique across Windows Embedded CE products. Some host-side applications rely on this name for configuration. Using unique names prevents target device-type conflicts and ensures successful integration with other Microsoft products.

For a code sample showing how to handle device system-parameters information (SPI) code requests, see %_WINCEROOT%\Platform\Common\Src\Common\IOCTL\Deviceinfo.cpp.

For more information, see Device Information IOCTL Unification.

See Also

Tasks

How to Develop an OEM Adaptation Layer

Concepts

Implementing the OEMIoControl Function