I am attempting to programatically make the 2nd Monitor have a duplicate display. My function below should change the 2nd monitors display to 'duplicate display', ie, make the 2nd monitor display everything that is on the 1st/Primary monitor.

My Problem: When I run my function it successfully finds the 2nd monitor and it changes that monitors display x coordinate to 0, ie, the left of the primary monitor screen by changing the DEVMODE dmPosition.x property. Both of my 2 monitors refresh themselves(they go black then reshow their screen) but the 2nd monitor still has the extended display instead of a duplicate display.

Any ideas how I can make my 2nd Monitor have a duplicate display?

Some relevant information:
- My 2nd monitor is a LCD TV and is connected to my laptop via HDMI
- My function code is exacty the same as the example on this MSDN Page that describes how to attach a 2nd monitor without having to restart. I have changed LINE 30 though.
- I am aware I can change the display on Windows 7 using one WinAPI function call but I need my program to work on Windows 2000 and up.

I tryed 2-3 different flags combinaison and tryed it, but to no avail. At least you're a little closer now.

Yes, even MS make bugs.

Edit: Or im wrong and this isn't supported...

Edit2: Just realized that i can't find a way to do this in wmware normally, but i recall being able to do it via nvidia control panel, might be why it dosent work. I really have no idea, sorry. lol, at least i tried...