функция обратного вызова DXGKDDI_SYSTEM_DISPLAY_WRITE (dispmprt.h)
Вызывается операционной системой для запроса драйвера мини-порта дисплея для записи блока изображения на устройство отображения.
Начиная с Windows 8 операционная система вызывает эту функцию во время операции проверки ошибок после системной stop-ошибки. Операционная система вызывает эту функцию, только если устройство отображения ранее было сброшено с помощью вызова DxgkDdiSystemDisplayEnable.
Синтаксис
DXGKDDI_SYSTEM_DISPLAY_WRITE DxgkddiSystemDisplayWrite;
void DxgkddiSystemDisplayWrite(
[in] PVOID MiniportDeviceContext,
[in] PVOID Source,
[in] UINT SourceWidth,
[in] UINT SourceHeight,
[in] UINT SourceStride,
[in] UINT PositionX,
[in] UINT PositionY
)
{...}
Параметры
[in] MiniportDeviceContext
Дескриптор для блока контекста, связанного с видеоадаптером. Функция DxgkDdiAddDevice драйвера мини-порта дисплея ранее предоставляла этот дескриптор подсистеме графического ядра Microsoft DirectX.
[in] Source
Указатель на начальный адрес исходного изображения, записываемого на экран проверки ошибок, в котором отображаются сведения о системной stop-ошибке.
[in] SourceWidth
Значение UINT, указывающее ширину (в единицах пикселей) указанного исходного изображения.
[in] SourceHeight
Значение UINT, указывающее высоту (в единицах пикселей) указанного исходного изображения.
[in] SourceStride
Значение UINT, указывающее количество байтов для каждой строки указанного исходного изображения.
[in] PositionX
Значение UINT, указывающее начальную координату X, в которую должно быть записано указанное исходное изображение на устройстве отображения.
[in] PositionY
Значение UINT, указывающее начальную координату Y, в которую должно быть записано указанное исходное изображение на устройстве отображения.
Возвращаемое значение
None
Remarks
Ограничения исходного образа
Драйвер мини-порта дисплея должен следовать этим рекомендациям при вызове функции DxgkDdiSystemDisplayWrite :- Формат цвета исходного изображения всегда находится в формате D3DDDIFMT_R8G8B8 (24 бита на пиксель) или D3DDDIFMT_A8R8G8B8 (32 бит/с) перечисления D3DDDIFORMAT . Драйвер мини-порта дисплея ранее задал режим отображения для включения операций записи в этом формате при вызове dxgkDdiSystemDisplayEnable .
- Исходное изображение находится в памяти без страниц. Драйвер мини-порта дисплея должен записать это исходное изображение в текущий буфер кадров, начиная с позиций, определенных параметрами PostionX и PositionY .
-
Драйвер мини-порта дисплея должен использовать ЦП для записи блока изображения в буфер кадров. Когда система сталкивается с stop-ошибкой, это могло быть вызвано непрерывным обнаружением времени ожидания и восстановлением (TDR) на устройстве дисплея. В этом случае графический процессор (GPU) может находиться в неизвестном состоянии.
Дополнительные сведения о TDR см. в разделе Обнаружение и восстановление времени ожидания (TDR).
Использование нестраничной памяти
Функции режима ядра Windows могут быть недоступны во время вызова этой функции.DxgkDdiSystemDisplayWrite можно вызвать в любом irQL, поэтому он должен находиться в непагебельной памяти. DxgkDdiSystemDisplayWrite не должен вызывать код, который находится в памяти, доступной для страниц, и не должен управлять данными, которые находится в доступной для страниц памяти.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 |
Минимальная версия сервера | Windows Server 2012 |
Целевая платформа | Персональный компьютер |
Верхняя часть | dispmprt.h |
IRQL | Любой уровень (см. раздел "Примечания") |
См. также раздел
DxgkCbAcquirePostDisplayOwnership