PFND3DDDI_UNLOCK fonction de rappel (d3dumddi.h)
La fonction Unlock déverrouille une ressource ou une surface au sein de la ressource qui était précédemment verrouillée par la fonction Lock .
Syntaxe
PFND3DDDI_UNLOCK Pfnd3dddiUnlock;
HRESULT Pfnd3dddiUnlock(
HANDLE hDevice,
const D3DDDIARG_UNLOCK *unnamedParam2
)
{...}
Paramètres
hDevice
Handle de l’appareil d’affichage (contexte graphique).
unnamedParam2
pData [in]
Pointeur vers une structure D3DDDIARG_UNLOCK qui décrit la ressource ou la surface dans la ressource à déverrouiller.
Valeur retournée
Unlock retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
S_OK | La ressource est déverrouillée. |
E_OUTOFMEMORY | Le déverrouillage n’a pas pu allouer la mémoire nécessaire pour qu’il se termine. |
E_INVALIDARG | La ressource décrite D3DDDIARG_UNLOCK n’a pas été verrouillée par un appel précédent à la fonction Lock du pilote. |
Remarques
Ces commentaires sont analogues à la description de la section Remarques de la page de référence verrouiller .
Le pilote d’affichage en mode utilisateur doit appeler la fonction pfnUnlockCb du runtime Microsoft Direct3D après l’appel de Unlock . Dans cet appel pfnUnlockCb , le pilote d’affichage en mode utilisateur passe un handle d’allocation. Avant d’appeler pfnUnlockCb, le pilote d’affichage en mode utilisateur doit d’abord mapper la surface à une allocation appropriée.
Le runtime appelle la fonction de déverrouillage du pilote d’affichage en mode utilisateur pour déverrouiller également les surfaces de mémoire système préallouées. Le runtime définit l’indicateur de champ de bits NotifyOnly dans le membre Indicateurs de la structure D3DDDIARG_UNLOCK pointée par pData pour différencier les appels de déverrouillage qui déverrouillent la mémoire système pré-allouée d’autres appels de déverrouillage . Si la fonction Lock du pilote d’affichage en mode utilisateur appelée pfnLockCb pour verrouiller l’allocation de mémoire système qui correspond à la surface, elle doit également appeler pfnUnlockCb. Le fait de ne pas appeler pfnUnlockCb arrête la coordination entre le runtime, le pilote d’affichage en mode utilisateur et le pilote miniport d’affichage.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows Vista et les versions ultérieures des systèmes d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | d3dumddi.h (inclure D3dumddi.h) |