DXGKDDI_QUERY_INTERFACE fonction de rappel (dispmprt.h)

La fonction DxgkDdiQueryInterface retourne une interface fonctionnelle implémentée par le pilote de miniport d’affichage.

Syntaxe

DXGKDDI_QUERY_INTERFACE DxgkddiQueryInterface;

NTSTATUS DxgkddiQueryInterface(
  [in] IN_CONST_PVOID MiniportDeviceContext,
  [in] IN_PQUERY_INTERFACE QueryInterface
)
{...}

Paramètres

[in] MiniportDeviceContext

Handle d’un bloc de contexte associé à un adaptateur d’affichage. La fonction DxgkDdiAddDevice du pilote miniport d’affichage a précédemment fourni ce handle au sous-système du noyau graphique Microsoft DirectX.

[in] QueryInterface

Pointeur vers une structure QUERY_INTERFACE dans laquelle le pilote de miniport d’affichage doit retourner des informations sur l’interface qu’il prend en charge.

Valeur retournée

DxgkDdiQueryInterface retourne STATUS_SUCCESS si elle réussit ; sinon, elle retourne l’un des codes d’erreur définis dans Ntstatus.h. Si un pilote miniport d’affichage ne prend pas en charge l’interface demandée, il doit retourner STATUS_NOT_SUPPORTED. En retournant STATUS_NOT_SUPPORTED, le pilote miniport d’affichage informe le système d’exploitation qu’il doit transmettre la requête au pilote suivant.

Remarques

DxgkDdiQueryInterface expose un mécanisme de communication entre le pilote miniport d’affichage et le pilote d’un appareil enfant (par exemple, un périphérique de capture vidéo). Un pilote de miniport d’affichage qui expose un tel mécanisme doit implémenter cette fonction.

DxgkDdiQueryInterface doit renseigner les membres de la structure INTERFACE vers laquelle pointe QueryInterface-Interface> comme suit :

  • Définissez Size sur le nombre d’octets dans la structure INTERFACE. Cette valeur ne doit pas dépasser le nombre d’octets spécifié par QueryInterface->Size.
  • Définissez Version sur la version de l’interface retournée par le pilote de miniport d’affichage. Le pilote miniport d’affichage doit correspondre au mieux à la version demandée par le pilote enfant dans QueryInterface->Version.
  • Définissez Contexte pour pointer vers un contexte défini par le pilote miniport d’affichage pour l’interface. En règle générale, un pilote de miniport d’affichage définit Context sur le handle du bloc de contexte de l’adaptateur d’affichage identifié par MiniportDeviceContext.
  • Initialisez InterfaceReference et InterfaceDereference pour qu’ils pointent vers les routines de référence et de déréférencement implémentées par le pilote miniport d’affichage pour cette interface.
  • Initialisez tous les membres supplémentaires spécifiques à l’interface pour qu’ils pointent vers les routines appropriées de l’interface exposée.
DxgkDdiQueryInterface s’exécute sur IRQL = PASSIVE_LEVEL et doit être rendu paginable.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et versions ultérieures des systèmes d’exploitation Windows.
Plateforme cible Desktop (Expérience utilisateur)
En-tête dispmprt.h
IRQL PASSIVE_LEVEL

Voir aussi

DxgkDdiAddDevice

DxgkDdiQueryChildRelations

QUERY_INTERFACE