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


функция обратного вызова PFND3DWDDM2_0DDI_SETHARDWAREPROTECTION (d3d10umddi.h)

SetHardwareProtection позволяет буферам цепочки буферов полноэкранного рабочего стола (DWM) передавать между защищенными и незащищенными состояниями без необходимости повторного создания.

Синтаксис

PFND3DWDDM2_0DDI_SETHARDWAREPROTECTION Pfnd3dwddm20DdiSethardwareprotection;

void Pfnd3dwddm20DdiSethardwareprotection(
  D3D10DDI_HDEVICE hDevice,
  D3D10DDI_HRESOURCE hResource,
  BOOL Protected
)
{...}

Параметры

hDevice

Дескриптор устройства отображения (графический контекст). Среда выполнения Direct3D передала этот дескриптор пользовательского режима в качестве элемента hDevice члена структуры D3DDDIARG_CREATEDEVICE при создании устройства.

hResource

Дескриптор объекта ресурса, созданного с помощью вызова CreateResourceDDI.

Protected

Указывает, что буфер должен быть защищен.

Возвращаемое значение

Никакой

Замечания

Уничтожение и повторное создание буферов цепочки буферов DWM — это тяжелая операция, которую можно избежать на некотором оборудовании. Этот DDI будет вызываться только в том случае, если драйвер сообщает о возможности D3DWDDM2_0DDI_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_TRANSITION. Если это не задано, будут уничтожены и воссоздаются базовые выделения цепочки буферов DWM.

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

Примечание DWM гарантированно повторно отрисовывает весь буфер цепочки буферов после изменения состояния защиты оборудования.
 

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10
минимальный поддерживаемый сервер Windows Server 2016
целевая платформа Настольный
заголовка d3d10umddi.h (include D3d10umddi.h)

См. также

CreateResource

D3DDDIARG_CREATEDEVICE