Post Reply

Forums -> Multiple monitors -> question about DirectDrawEnumerateEx & DDENUM_DETACHEDSECONDARYDEVICES
Peter   2002-11-27 00:44
Hello,

I have 2 video cards in my system, a GForce3 AGP and a GForce2 PCI. The AGP one is set as my primary, the PCI one is not attached to the desktop. I'm using Windows XP SP1.

When I enumerate the DirectDraw devices, the PCI card is not enumerated (only the primary card is enumerated). However, when I attach the PCI one to the desktop all cards are enumerated.

My function call :

BOOL WINAPI Callback(GUID FAR *lpGUID, LPSTR lpDriverDescription, LPSTR lpDriverName, LPVOID lpContext, HMONITOR hm)
{
char buffer[256];

MessageBoxEx(NULL, lpDriverDescription, NULL, MB_OK, NULL);

return DDENUMRET_OK;
}

DirectDrawEnumerateEx(Callback, NULL, DDENUM_NONDISPLAYDEVICES | DDENUM_ATTACHEDSECONDARYDEVICES | DDENUM_DETACHEDSECONDARYDEVICES);


I specify the flag DDENUM_DETACHEDSECONDARYDEVICES, so why is the non-attached card not enumerated? Any ideas?

Greetings.
Christian Studer   2002-11-27 08:43
I don't know why the function doesn't enumerate the detached monitor, but you wouldn't be able to use it anyway, independent displays can't be used through DirectX on Win2000/XP.

I would recommend using EnumDisplayDevices if you want to enumerate all installed displays, independent of whether they are enabled or not.

Christian Studer - www.realtimesoft.com
Forums -> Multiple monitors -> question about DirectDrawEnumerateEx & DDENUM_DETACHEDSECONDARYDEVICES

Post Reply