IDirectDrawSurface7 ::Restore, méthode (ddraw.h)
Restaure une surface qui a été perdue. Cela se produit lorsque la mémoire surface associée à l’objet DirectDrawSurface a été libérée.
Syntaxe
HRESULT Restore();
Valeur de retour
Si la méthode réussit, la valeur de retour est DD_OK.
En cas d’échec, la méthode peut retourner l’une des valeurs d’erreur suivantes :
- DDERR_GENERIC
- DDERR_IMPLICITLYCREATED
- DDERR_INCOMPATIBLEPRIMARY
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_NOEXCLUSIVEMODE
- DDERR_OUTOFMEMORY
- DDERR_UNSUPPORTED
- DDERR_WRONGMODE
Remarques
La restauration restaure la mémoire qui a été allouée pour une surface, mais ne recharge pas les bitmaps qui auraient pu exister dans la surface avant sa perte.
Les surfaces peuvent être perdues parce que le mode de la carte graphique a été modifié ou parce qu’une application a reçu un accès exclusif à la carte graphique et libéré toute la mémoire surface actuellement allouée sur l’adaptateur. Lorsqu’un objet DirectDrawSurface perd sa mémoire surface, de nombreuses méthodes retournent DDERR_SURFACELOST et n’exécutent aucune autre fonction. La méthode IDirectDrawSurface7 ::Restore réalloue la mémoire de surface et la rattache à l’objet DirectDrawSurface.
Un seul appel à Restore restaure les surfaces implicites associées à un objet DirectDrawSurface (mémoires tampons arrière, etc.). Une tentative de restauration d’une surface créée implicitement génère une erreur. La restauration ne fonctionne pas sur les pièces jointes explicites créées à l’aide de la méthode IDirectDrawSurface7 ::AddAttachedSurface . Chacune de ces surfaces doit être restaurée individuellement.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | ddraw.h |
Bibliothèque | Ddraw.lib |
DLL | Ddraw.dll |