Метод IDXGIOutputDuplication::AcquireNextFrame (dxgi1_2.h)
Указывает, что приложение готово к обработке следующего образа рабочего стола.
Синтаксис
HRESULT AcquireNextFrame(
[in] UINT TimeoutInMilliseconds,
[out] DXGI_OUTDUPL_FRAME_INFO *pFrameInfo,
[out] IDXGIResource **ppDesktopResource
);
Параметры
[in] TimeoutInMilliseconds
Интервал времени ожидания в миллисекундах. Этот интервал указывает время ожидания нового кадра методом перед возвратом к вызывающему объекту. Этот метод возвращает значение , если истекает интервал и новый образ рабочего стола недоступен.
Дополнительные сведения об интервале времени ожидания см. в разделе Примечания.
[out] pFrameInfo
Указатель на расположение памяти, которое получает структуру DXGI_OUTDUPL_FRAME_INFO , описывающую время и статистику представления кадра.
[out] ppDesktopResource
Указатель на переменную, которая получает интерфейс IDXGIResource поверхности, содержащей растровое изображение рабочего стола.
Возвращаемое значение
AcquireNextFrame возвращает следующее :
- S_OK, если он успешно получил следующий образ рабочего стола.
- DXGI_ERROR_ACCESS_LOST, если интерфейс дублирования рабочего стола недопустим. Интерфейс дублирования рабочего стола обычно становится недопустимым, если на рабочем столе отображается изображение другого типа. Примеры такой ситуации:
- Переключатель рабочего стола
- Изменение режима
- Включение DWM, отключение DWM или другого полноэкранного приложения
- DXGI_ERROR_WAIT_TIMEOUT, истекло ли время ожидания до появления следующего кадра рабочего стола.
- DXGI_ERROR_INVALID_CALL, если приложение называется AcquireNextFrame без освобождения предыдущего кадра.
- E_INVALIDARG, если один из параметров AcquireNextFrame является неверным ; Например, если pFrameInfo имеет значение NULL.
- Возможно, другие коды ошибок, описанные в DXGI_ERROR разделе.
Комментарии
При успешном возврате AcquireNextFrame вызывающее приложение может получить доступ к образу рабочего стола, возвращаемого AcquireNextFrame в переменной ppDesktopResource. Если вызывающий объект задает нулевой интервал времени ожидания в параметре TimeoutInMilliseconds , AcquireNextFrame проверяет, доступен ли новый образ рабочего стола, возвращается немедленно и указывает результат с возвращаемым значением. Если вызывающий объект задает интервал времени ожидания INFINITE в параметре TimeoutInMilliseconds , интервал времени ожидания никогда не истекает.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | dxgi1_2.h |
Библиотека | Dxgi.lib |