Поделиться через


XPDM и WDDM

API Direct3D 9 работает с моделью драйвера дисплея Windows XP (XPDM) или моделью драйвера дисплея Windows Vista (WDDM), в зависимости от установленной операционной системы. Существуют некоторые различия в том, как API Direct3D работает в двух моделях драйверов.

Безопасный рабочий стол

Безопасный рабочий стол активируется всякий раз, когда возникает любая из следующих ситуаций: пользователь блокирует рабочий стол (Windows+L), активирует средство сохранения экрана (если пользователь не вошел в систему) или по умолчанию, когда элемент управления учетными записями пользователя представляет запрос. Если безопасный рабочий стол активен, устройство HAL недоступно.

Различия между XPDM и WDDM:

  • Попытка создать устройство Direct3D9 HAL завершится ошибкой (с D3DERR_NOT_AVAILABLE), а любое существующее устройство Direct3D 9 указывает на потерянный код возврата устройства в present.

  • API Direct3D9Ex и Direct3D 10 могут успешно создавать устройство во время активного безопасного рабочего стола, а все вызовы к Present (IDirect3D9Ex или DXGI) возвращают код состояния, указывающий, что рабочий стол в настоящее время недоступен.

 

Удаленный рабочий стол

Когда удаленный рабочий стол активен, экран обрабатывается компьютером просмотра с помощью компьютера размещения, отправляя данные через сеть.

Различия между XPDM и WDDM:

  • В XPDM все попытки создать устройство Direct3D 9 на удаленном рабочем столе завершится ошибкой.

  • В WDDM удаленный рабочий стол поддерживает создание устройства HAL через сеанс удаленного рабочего стола.

 

Служба Windows

Служба Windows — это процесс, который выполняется в фоновом режиме, контролируемый диспетчером управления службами (SCM). Служба работает независимо от активного рабочего стола и поэтому имеет ограниченную возможность взаимодействия с пользователями.

Различия между XPDM и WDDM:

  • В WDDM изоляция сеанса 0 гарантирует, что служба не имеет доступа к любому рабочему столу пользователя в качестве меры безопасности, поэтому устройство Direct3D 9 HAL никогда не доступно из службы Windows.

 

Заметка

Нельзя использовать Direct3D 9 в службе Windows. Дополнительные сведения см. в статье поддержки Майкрософт 978635.

 

В следующей таблице перечислены различия, перечисленные здесь.

Безопасный рабочий стол XPDM WDDM (Direct3D9) WDDM(Direct3D9Ex/Direct3D10)
NULLREF Да Да Да
ХЭЛ Нет Нет Да
REF Да Да Да
Удаленный рабочий стол
NULLREF Нет Да Да
ХЭЛ Нет Да Да
REF Да Да Да
Служба Windows
NULLREF Нет Нет Нет
ХЭЛ Нет Нет Нет
REF Нет Нет Нет
WARP10 N/A N/A Да

 

Дополнительные сведения о XPDM, WDDM, Direct3D9Ex и Direct3D 10 см. в API графики в Windows.

устройства Direct3D