Partager via


Fonction DrvDeriveSurface (winddi.h)

La fonction DrvDeriveSurface dérive une surface GDI de la surface DirectDraw spécifiée.

Syntaxe

HBITMAP DrvDeriveSurface(
  DD_DIRECTDRAW_GLOBAL *pDirectDraw,
  DD_SURFACE_LOCAL     *pSurface
);

Paramètres

pDirectDraw

Pointeur vers une structure DD_DIRECTDRAW_GLOBAL qui décrit l’objet DirectDraw.

pSurface

Pointeur vers une structure DD_SURFACE_LOCAL qui décrit la surface DirectDraw autour de laquelle encapsuler une surface GDI.

Valeur retournée

DrvDeriveSurface retourne un handle à la surface GDI dérivée en cas de réussite. Elle retourne la valeur NULL si l’appel échoue ou si le pilote ne peut pas accélérer le dessin GDI sur la surface DirectDraw spécifiée.

Remarques

DrvDeriveSurface permet au pilote de créer une surface GDI encapsulée autour d’une mémoire vidéo DirectDraw ou d’un objet surface AGP afin d’autoriser le dessin GDI accéléré sur la surface. Si le pilote n’accroche pas cet appel, tout le dessin GDI sur directDraw surfaces est effectué dans un logiciel à l’aide du moteur DIB.

GDI appelle DrvDeriveSurface avec des surfaces RVB uniquement.

Le pilote doit appeler DrvCreateDeviceBitmap pour créer une surface GDI de la même taille et du même format que celle de la surface DirectDraw. Il n’est pas nécessaire d’allouer de l’espace pour les pixels réels, car il existe déjà.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête winddi.h (inclure Winddi.h)

Voir aussi

DrvCreateDeviceBitmap

EngCreateDeviceBitmap

EngModifySurface