Multiple-Monitor Operations

When a device is successfully reset (with Device.Reset) or created (with Device.Device) in full-screen operations, the Microsoft Direct3D object that created the device is marked as owning all adapters on that system. This state is known as exclusive mode, and is owned by the Direct3D object. Exclusive mode means that devices created by any other Direct3D object can neither assume full-screen operations nor allocate video memory. In addition, when a Direct3D object assumes exclusive mode, all devices other than the one that went full-screen are placed in lost state. For more information, see Lost Devices.

Along with exclusive mode, the Direct3D object is informed of the focus window that the device will use. Exclusive mode is released when the final full-screen device owned by that Direct3D object is either reset to windowed mode or destroyed.

Devices can be divided into two categories when a Direct3D object owns exclusive mode. The first category of devices have the following characteristics.

  • They are created by the same Direct3D object that created the full-screen device.
  • They have the same focus window as the full-screen device.
  • They represent a different adapter from any full-screen device.

Devices in this category have no restrictions concerning their ability to be reset or created, and they are not placed in lost state. They can even be put into full-screen mode.

Devices that do not fall into the first category—those that are created by another Direct3D object, created with a different focus window, and created for an adapter with a device that is already full-screen—cannot be reset and remain in lost state until the exclusive mode is lost. As a result, a multiple-monitor application can place several devices in full-screen mode, but only if all of them are for different adapters, were created by the same Direct3D object, and share the same focus window.