Why can't I rotate the display with ChangeDisplaySettingsEx?
If you have one of those cool swively LCD displays
(or if you decided to
build your own),
you naturally want to tell your video card to display rotated output,
so you can take advantage of the portrait orientation.
And naturally you would think that calling the
ChangeDisplaySettingsEx
and using the
dmDisplayOrientation field of the DEVMODE
structure
would do the trick.
And then you would find that it doesn't work.
Yet the annoying utility program
(which gets shoveled onto your computer when you install the driver)
can rotate the video output.
How come they can do it, but ChangeDisplaySettingsEx can't?
Because the video card vendor decided to do it in a nonstandard way
so that you're forced to use their annoying utility program.
I'm told that one of the requirements of the
Windows Vista Display Driver Model
is that video drivers which support rotation must do so
via the standard rotation interface.
No "secret backdoor hidden rotation functionality" allowed.
So at least things are getting better.
Of course, this doesn't help
if you have a video card that doesn't have WDDM drivers.
To the rescue come
the clever people at
EnTech,
who developed the
iRotate
utility which knows the secret backdoor way to convince these
annoying video cards to do their rotation.