функция обратного вызова PFND3DKMT_OUTPUTDUPLPRESENT (d3dkmthk.h)
Отправляет указанную команду из API дублирования рабочих столов цепочку буферов диспетчера окон рабочего стола (DWM) в подсистему ядра графики Microsoft DirectX (Dxgkrnl.sys).
Синтаксис
PFND3DKMT_OUTPUTDUPLPRESENT Pfnd3dkmtOutputduplpresent;
NTSTATUS Pfnd3dkmtOutputduplpresent(
[in] const D3DKMT_OUTPUTDUPLPRESENT *unnamedParam1
)
{...}
Параметры
[in] unnamedParam1
pData
Указатель на структуру D3DKMT_OUTPUTDUPLPRESENT, описывающую параметры для текущей операции.
Возвращаемое значение
Возвращает одно из следующих значений:
код возврата | описание |
---|---|
STATUS_SUCCESS | Текущая операция успешно выполнена. |
STATUS_DEVICE_REMOVED | Графический адаптер был остановлен или контекст отображения был сброшен. |
STATUS_INVALID_PARAMETER | Параметры были проверены и определены как неверные. |
STATUS_NO_MEMORY | D3DKMTOutputDuplPresent не удалось завершить из-за нехватки памяти. |
STATUS_GRAPHICS_ALLOCATION_INVALID | Основной дескриптор поверхности был недопустим из-за изменения режима отображения. Если установленный драйвер клиента OpenGL получает этот код ошибки, он должен повторно открыть или повторно создать первичный дескриптор, заменить все ссылки в буфере команд на старый дескриптор новым дескриптором, а затем повторно отправить буфер. |
STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE | Произошла ошибка в контексте устройства отрисовки, который указывает элемент hContext D3DKMT_OUTPUTDUPLPRESENT. Примечание. Этот код ошибки не указывает на запуск процесса обнаружения времени ожидания и восстановления (TDR) или что GPU перестал отвечать. Например, подсистема ядра графики DirectX помещает устройство в состояние ошибки, если драйвер минипорта отображения указал, что буфер DMA, отправленный с этого устройства, вызвал ошибку или если диспетчер памяти видео не мог отображать все выделения, необходимые для буфера DMA, даже после разделения буфера DMA. После того как устройство находится в состоянии ошибки, оно не может выполнять больше операций и должно быть уничтожено и повторно создано. ICD может вызвать функцию D3DKMTGetDeviceState, чтобы определить более точные причины ошибки. |
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8 |
минимальный поддерживаемый сервер | Windows Server 2012 |
целевая платформа | Всеобщий |
заголовка | d3dkmthk.h (include D3dkmthk.h) |