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