How to get the monitor name in DX9

Started by
3 comments, last by LeLorrain 13 years, 11 months ago
Hi! I have found that I can get the monitor name using "EnumDisplayDevices()" but, how do I re-conciliate the results with D3D enumeration? I have one graphics adapter with two monitors and I get the following results: EnumDisplayDevices: Two displays, each with two monitors \\.\DISPLAY1\MONITOR0 and \\.\DISPLAY1\MONITOR1 \\.\DISPLAY2\MONITOR0 and \\.\DISPLAY1\MONITOR1 (Note: I did retain only the display with flag "DISPLAY_DEVICE_ATTACHED_TO_DESKTOP") D3DEnumeration: Two adapters \\.\DISPLAY1 \\.\DISPLAY2 Do I have to assume the display1 will ALWAYS have monitor0 attached and display2 monitor1? (From the maximum resolution given by the enumeration that seem to be case: monitor0 has 1920x1200 and monitor1 has 2048 x 1536.) Or is there a way to differentiate? Thanks. LeLorrain
Advertisement
Perhaps this could be of use? Never used it myself, but it sounds promising.
Hummm... "GetPhysicalMonitorsFromIDirect3DDevice9" could do it, Mat, but MSDN says that it works only with Vista and up and I am using XP. Nevertheless, I will try it and report the results. <<edited: "undeclared identifier"!>>

There is also "GetPhysicalMonitorsFromHMONITOR" which also works only on Vista+!

Thanks.

[Edited by - LeLorrain on April 29, 2010 11:14:59 PM]
AFAIK the only way to retrieve the name of a device is to find it in the registry and reading and parsing the DeviceDesc key. Otherwise you can use GetAdapterIdentifier() from Direct3D9 interface to get the name of the adapter (graphics card series usually.)
Programmer16: Adaptor Identifier provides the same name for both (e.g. "ATI Radeon HD 4800 Series") but the device names are different (\\.\DISPLAY1 and \\.\DISPLAY2.) My problem is that I also get both monitor devices on each adaptor.

I do Have in the enumeration the registry keys, so i guess I'm gonna have to dig into it if I really want to find the monitor names.

Now, I realize that it would be useless if both monitors were identical!
So I might as well forget about it!

This topic is closed to new replies.

Advertisement