I know that DirectDraw7 is rather outdated meanwhile, but I am working on a
large scale project that uses it, so I hope that someone can answer my
There are, among others, two flags that may be passed to
IDirectDraw7::SetCooperativeLevel(), which are DDSCL_SETFOCUSWINDOW and
DDSCL_CREATEDEVICEWINDOW. Although I spent quite a while searching for an
explanation of the meaning of these flags on the internet, all I found was
the information that an application may have a focus window to determine
whether it gains or loses the input focus, and that a device may have a
device window, which is somehow related to the back buffer.
My application is running with exclusive rights in full screen mode, i.e. I
am also passing the DDSCL_EXCLUSIVE as well as the DDSCL_FULLSCREEN flag.
But I am not quite sure whether I also need to specify the flags for the
focus window and the device window. Many tutorials I found do not seem to
use these flags. Can anyone please explain to me what's the deal with the
focus window and the device window? My call to
IDirectDraw7::SetCooperativeLevel() currently looks like this:
// Set the cooperative level.
if ( SUCCEEDED( hResult = lpDD7->SetCooperativeLevel(
hWnd, DDSCL_SETFOCUSWINDOW | DDSCL_CREATEDEVICEWINDOW |
DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN | DDSCL_ALLOWREBOOT ) ) )
// Return the result.
Is there anything wrong with it?
http://www.anvil-soft.com - The Creators of Toilet Tycoon
http://www.anvil-soft.de - Die Macher des Klomanagers