How to display different content in Duplicate mode

TiLong 1 Reputation point
2021-03-24T14:48:15.517+00:00

I know that in the Duplicate mode(Win + P), the display contents of the two monitors are exactly the same. Even through EnumDisplayMonitors or GetSystemMetrics(SM_CMONITORS), only one monitor information can be obtained.

I currently have this requirement. In the Duplicate mode, only a green mask is displayed on one of the monitors for matting.

If you use a semi-transparent green window, both monitors will display this green mask (after all, it is in Duplicate mode).

I tried to modify the color temperature of one of the monitors (SetMonitorRedGreenOrBlueGain), but not all monitors support it.

Is there any solution? Thank you.

Windows API - Win32
Windows API - Win32
A core set of Windows application programming interfaces (APIs) for desktop and server applications. Previously known as Win32 API.
1,895 questions
No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Strive Sun-MSFT 421 Reputation points
    2021-03-25T03:26:55.403+00:00

    Hello, @TiLong-6157

    I tried to modify the color temperature of one of the monitors (SetMonitorRedGreenOrBlueGain), but not all monitors support it.

    For the green mask, you can only achieve it by adjusting the color temperature of the monitor. Two monitors in duplicate mode, no matter how you create the mask, such as using SetLayeredWindowAttributes, it will have the same visual effect on both monitors. As you said, not all monitors support color temperature adjustment (I haven't verified this statement, at least my two monitors support it). So what I want to say is that this is basically difficult to do.

    ----------

    Thank you!

    If the answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.