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


Метод IDisplayDeviceInterop::OpenSharedHandle (windows.devices.display.core.interop.h)

Открывает маркер для общих основных поверхностей, общих ограждений и маркеров исходной презентации.

Синтаксис

HRESULT OpenSharedHandle(
  HANDLE NTHandle,
  IID    riid,
  void   **ppvObj
);

Параметры

NTHandle

Тип: HANDLE

Дескриптор NT для общей основной поверхности, общего ограждения или исходного дескриптора презентации.

riid

Тип: REFIID

Ссылка на идентификатор интерфейса (IID) для интерфейса по умолчанию одного из следующих классов среда выполнения Windows. ИД — это GUID.

ppvObj

Тип: void**

Указатель на блок памяти, получающий указатель на интерфейс, указанный аргументом riid .

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

Тип: HRESULT

Возвращает S_OK об успешном выполнении или код сбоя, описывающий проблему при сбое.

Комментарии

Этот метод можно использовать для открытия любого общего ограждения, но поверхность можно открыть только в том случае, если она была создана в качестве основной. Основные поверхности — это поверхности, предназначенные для непосредственного использования оборудованием дисплея для сканирования. Большинство типичных поверхностей Direct3D не создаются в качестве первичных, если только они не были созданы для использования в обратном буфере цепочки буферов. DisplayDevice.CreatePrimary всегда создает поверхность в качестве основной, так как она всегда предназначена для сканирования.

Открытие исходного дескриптора презентации аналогично вызову CreateScanoutSource для целевого дескриптора презентации, за исключением того, что необязательно создавать DisplayDevice из того же объекта DisplayManager , который создал дескриптор. Это позволяет точно контролировать доступ к сканированию.

Требования

Требование Значение
Минимальная версия клиента сборка Windows 10 20348
Минимальная версия сервера сборка Windows 10 20348
Целевая платформа Windows
Header windows.devices.display.core.interop.h
Библиотека d3d12.lib
DLL d3d12.dll

См. также раздел