Méthode IDirectDrawSurface7 ::SetSurfaceDesc (ddraw.h)
Définit les caractéristiques d’une surface existante.
Syntaxe
HRESULT SetSurfaceDesc(
[in] LPDDSURFACEDESC2 unnamedParam1,
[in] DWORD unnamedParam2
);
Paramètres
[in] unnamedParam1
Pointeur vers une structure DDSURFACEDESC2 qui contient les nouvelles caractéristiques de surface.
[in] unnamedParam2
Actuellement non utilisé et doit être défini sur 0.
Valeur retournée
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_INVALIDPARAMS
- DDERR_INVALIDOBJECT
- DDERR_SURFACELOST
- DDERR_SURFACEBUSY
- DDERR_INVALIDSURFACETYPE
- DDERR_INVALIDPIXELFORMAT
- DDERR_INVALIDCAPS
- DDERR_UNSUPPORTED
- DDERR_GENERIC
Remarques
Actuellement, vous pouvez utiliser SetSurfaceDesc uniquement pour définir les données de surface et le format de pixels utilisés par une surface de mémoire système explicite. Cela est utile, car il permet à une surface d’utiliser les données d’une mémoire tampon précédemment allouée sans copier. La nouvelle mémoire de surface est allouée par l’application cliente et, par conséquent, l’application cliente doit également la libérer.
L’objet DirectDrawSurface ne libère pas la mémoire de surface qu’il n’a pas allouée. Par conséquent, lorsque la mémoire de surface n’est plus nécessaire, vous devez la libérer. Toutefois, lorsque vous appelez SetSurfaceDesc, DirectDraw libère la mémoire de surface d’origine qu’il a implicitement allouée lors de la création de la surface.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | ddraw.h |
Bibliothèque | Ddraw.lib |
DLL | Ddraw.dll |