DXGKDDI_OPENALLOCATIONINFO fonction de rappel (d3dkmddi.h)
La fonction DxgkDdiOpenAllocation lie les allocations non spécifiques à l’appareil que la fonction DxgkDdiCreateAllocation a créées à des allocations spécifiques à l’appareil de contexte graphique spécifié.
Syntaxe
DXGKDDI_OPENALLOCATIONINFO DxgkddiOpenallocationinfo;
NTSTATUS DxgkddiOpenallocationinfo(
[in] IN_CONST_HANDLE hDevice,
[in] IN_CONST_PDXGKARG_OPENALLOCATION pOpenAllocation
)
{...}
Paramètres
[in] hDevice
Handle vers le périphérique de contexte graphique à partir duquel les allocations sont liées. La fonction DxgkDdiCreateDevice du pilote miniport d’affichage fournissait précédemment ce handle au sous-système du noyau graphique Microsoft DirectX dans le membre hDevice de la structure DXGKARG_CREATEDEVICE .
[in] pOpenAllocation
Pointeur vers une structure DXGKARG_OPENALLOCATION qui contient des informations sur les allocations de liaison.
Valeur retournée
DxgkDdiOpenAllocation retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
STATUS_SUCCESS | DxgkDdiOpenAllocation a correctement lié les allocations au périphérique de contexte graphique spécifié par le paramètre hDevice. |
STATUS_INVALID_PARAMETER | Les paramètres passés à DxgkDdiOpenAllocation contenaient des erreurs qui l’empêchaient de se terminer. |
STATUS_NO_MEMORY | DxgkDdiOpenAllocation n’a pas pu allouer la mémoire nécessaire pour qu’elle se termine. |
STATUS_GRAPHICS_DRIVER_MISMATCH | Le pilote de miniport d’affichage n’est pas compatible avec le pilote d’affichage en mode utilisateur qui a lancé l’appel à DxgkDdiOpenAllocation (autrement dit, fourni des données privées au pilote de miniport d’affichage). |
Remarques
Le sous-système du noyau graphique DirectX appelle la fonction DxgkDdiOpenAllocation du pilote miniport d’affichage pour lier les allocations non spécifiques à l’appareil que la fonction DxgkDdiCreateAllocation a créées à des allocations spécifiques au périphérique de contexte graphique spécifié par le paramètre hDevice . Le pilote de miniport d’affichage lie les allocations à un appareil afin que le pilote puisse effectuer le suivi des données d’allocation spécifiques à un appareil.
Le pilote de miniport d’affichage peut lier une allocation à n’importe quel appareil créé par n’importe quel processus (sur la même carte graphique) et pas seulement à un appareil du processus de création.
Lorsque DxgkDdiOpenAllocation retourne STATUS_SUCCESS, le pilote définit le membre hDeviceSpecificAllocation de la structure DXGK_OPENALLOCATIONINFO pour chaque allocation sur une valeur non NULL. La structure DXGK_OPENALLOCATIONINFO pour chaque allocation est un élément du tableau spécifié par le membre pOpenAllocation de la structure DXGKARG_OPENALLOCATION .
Le pilote peut modifier les données du pilote privé d’allocation qui sont passées dans le membre pPrivateDriverData de la structure DXGK_OPENALLOCATIONINFO uniquement lorsque l’allocation est créée (ce qui est indiqué lorsque l’indicateur Créer un champ binaire dans le membre Indicateurs de la structure DXGKARG_OPENALLOCATION est défini). Le pilote doit déterminer qu’il peut uniquement lire les données du pilote privé d’allocation lorsque l’allocation est ouverte (autrement dit, lorsque l’indicateur Créer un champ binaire n’est pas défini).
DxgkDdiOpenAllocation doit être rendu paginable.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |