функция обратного вызова DXGKDDI_QUERY_INTERFACE (dispmprt.h)
Функция DxgkDdiQueryInterface возвращает функциональный интерфейс, реализованный драйвером мини-порта дисплея.
Синтаксис
DXGKDDI_QUERY_INTERFACE DxgkddiQueryInterface;
NTSTATUS DxgkddiQueryInterface(
[in] IN_CONST_PVOID MiniportDeviceContext,
[in] IN_PQUERY_INTERFACE QueryInterface
)
{...}
Параметры
[in] MiniportDeviceContext
Дескриптор для блока контекста, связанного с адаптером отображения. Функциядрайвера минипорта дисплеяDxgkDdiAddDevice ранее предоставила этот дескриптор для Dxgkrnl.
[in] QueryInterface
Указатель на структуру QUERY_INTERFACE, в которой драйвер мини-порта отображения должен возвращать сведения об интерфейсе, который он поддерживает.
Возвращаемое значение
DxgkDdiQueryInterface возвращает STATUS_SUCCESS, если он выполнен успешно; в противном случае возвращается соответствующий код NTSTATUS. Если драйвер минипорта дисплея не поддерживает запрошенный интерфейс, он должен вернуть STATUS_NOT_SUPPORTED. Возвращая STATUS_NOT_SUPPORTED, драйвер минипорта отображения сообщает операционной системе передать запрос следующему драйверу.
Замечания
DxgkDdiQueryInterface предоставляет механизм связи между драйвером минипорта дисплея и драйвером дочернего устройства (например, устройством записи видео). Минипорт-драйвер дисплея, предоставляющий такой механизм, должен реализовать эту функцию.
DxgkDdiQueryInterface должен заполнить элементы структуры интерфейса, которая QueryInterface->Interface указывает следующим образом:
Задайте размер число байтов в структуре ИНТЕРФЕЙСА. Это значение не должно превышать количество байтов, указанных QueryInterface—>Размер.
Задайте версии версию интерфейса, возвращаемую драйвером мини-порта дисплея. Драйвер мини-порта отображения должен лучше всего соответствовать версии, запрошенной дочерним драйвером в QueryInterface—>версии.
Задайте контексту указывать на контекст, определенный драйвером мини-порта для интерфейса. Как правило, драйвер мини-порта отображения задается контексту дескриптору контекстного блока адаптера отображения, который определяется MiniportDeviceContext.
Инициализация InterfaceReference и InterfaceDereference, чтобы указать на реализованные в этом интерфейсе подпрограммы ссылок и разыменовки минипорта.
Инициализировать все дополнительные члены интерфейса, чтобы указать на соответствующие подпрограммы предоставляемого интерфейса.
DxgkDdiQueryInterface выполняется в IRQL = PASSIVE_LEVEL и должен быть создан на страницу.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
целевая платформа | Настольный |
заголовка | dispmprt.h |
IRQL | PASSIVE_LEVEL |