SetMonitorColorTemperature function (highlevelmonitorconfigurationapi.h)


The physical monitor configuration functions work using the VESA Monitor Control Command Set (MCCS) standard over an I2C interface. Many monitors don't fully implement that standard; so your use of these commands might result in undefined monitor behavior. We don't recommend using these functions for arbitrary monitors without physically validating that they work as intended.

Sets a monitor's color temperature.


_BOOL SetMonitorColorTemperature(
  [in] HANDLE               hMonitor,
  [in] MC_COLOR_TEMPERATURE ctCurrentColorTemperature


[in] hMonitor

Handle to a physical monitor. To get the monitor handle, call GetPhysicalMonitorsFromHMONITOR or GetPhysicalMonitorsFromIDirect3DDevice9.

[in] ctCurrentColorTemperature

Color temperature, specified as a member of the MC_COLOR_TEMPERATURE enumeration.

Return value

If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError.


If this function is supported, the GetMonitorCapabilities function returns the MC_CAPS_COLOR_TEMPERATURE flag. The GetMonitorCapabilities function also returns the range of color temperatures that the monitor supports. The ctCurrentColorTemperature parameter must correspond to one of these values.

Changing the color temperature changes the monitor's white point. It can also change the current drive and gain settings. To get the new drive and gain settings, call GetMonitorRedGreenOrBlueDrive and GetMonitorRedGreenOrBlueGain, respectively.

This function takes from 50 to 90 milliseconds to return.


Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header highlevelmonitorconfigurationapi.h
Library Dxva2.lib
DLL Dxva2.dll

See also

Monitor Configuration Functions