DXGKDDI_MIRACAST_DESTROY_CONTEXT fonction de rappel (dispmprt.h)
Détruit un instance d’un appareil Miracast.
Syntaxe
DXGKDDI_MIRACAST_DESTROY_CONTEXT DxgkddiMiracastDestroyContext;
void DxgkddiMiracastDestroyContext(
[in] PVOID DriverContext,
[in] PVOID MiracastContext
)
{...}
Paramètres
[in] DriverContext
Handle vers 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 DirectX.
[in] MiracastContext
Contexte de l’appareil Miracast, fourni par le système d’exploitation. Ce contexte était précédemment fourni par le pilote dans un appel à la fonction DxgkDdiMiracastCreateContext .
Valeur de retour
None
Remarques
Lorsque cette fonction est appelée, le pilote miniport d’affichage doit libérer toutes les ressources en mode noyau qu’il a allouées lors du traitement de la fonction DxgkDdiMiracastCreateContext , et il doit envoyer immédiatement une valeur de détection de prise à chaud (HPD) de départ du moniteur au système d’exploitation.
Le système d’exploitation garantit qu’après avoir appelé cette fonction, il n’effectuera plus d’appels à la fonction DxgkDdiMiracastIoControl .
Si un appareil Miracast est déconnecté avant la fin de la fonction DxgkDdiCommitVidPn , alors qu’une opération est toujours en cours sur cette cible Miracast, le pilote miniport d’affichage ne doit pas envoyer de données au pilote Miracast en mode utilisateur.
Si la fonction StopMiracastSession en mode utilisateur prend trop de temps, le système d’exploitation appelle DxgkDdiMiracastDestroyContext pendant que le pilote Miracast en mode utilisateur est toujours en cours d’exécution. Dans ce cas, le système d’exploitation bloque tout autre appel à la fonction MiracastIoControl en mode utilisateur.
Synchronisation
Le système d’exploitation regroupe les fonctions DxgkDdiMiracastCreateContext, DxgkDdiMiracastDestroyContext et DxgkDdiMiracastIoControl en tant que classe Miracast . Le système d’exploitation garantit que ces fonctions suivent le mode de synchronisation de deuxième niveau tel que défini dans Threading et Synchronisation deuxième niveau. Ces fonctions peuvent être appelées lorsque d’autres niveaux 0, 1 ou d’autres classes de fonctions de niveau 2 sont appelées sur un autre contexte de thread. Toutefois, une seule de ces fonctions de classe Miracast de niveau 2 peut être appelée à la fois.Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8.1 |
Serveur minimal pris en charge | Windows Server 2012 R2 |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dispmprt.h (include Dispmprt.h) |
IRQL | PASSIVE_LEVEL |