Partager via


Fonction DrvSaveScreenBits (winddi.h)

La fonction DrvSaveScreenBits permet à un pilote d’affichage d’enregistrer ou de restaurer un rectangle donné de l’image affichée.

Syntaxe

ULONG_PTR DrvSaveScreenBits(
  SURFOBJ   *pso,
  ULONG     iMode,
  ULONG_PTR ident,
  RECTL     *prcl
);

Paramètres

pso

Pointeur vers une structure SURFOBJ qui décrit la surface.

iMode

Spécifie l'opération à exécuter. Ce paramètre peut être l’une des valeurs suivantes :

SS_SAVE

Le pilote doit enregistrer les données du rectangle défini par prcl. Le pilote est responsable de la gestion de ces données dans sa mémoire hors écran. Le paramètre ident est ignoré.

En cas de réussite, DrvSaveScreenBits doit retourner un identificateur pour les données enregistrées. Le pilote peut retourner un handle ou même un pointeur vers sa mémoire hors écran. Cette fonction retourne zéro en cas d’échec.

SS_RESTORE

Le pilote doit restaurer les données identifiées par ident au rectangle prcl sur l’affichage ; autrement dit, le pilote doit restaurer la bitmap à sa position d’origine. Le pilote peut supposer que le rectangle au niveau de prcl a exactement la même taille que le rectangle qui a été enregistré. Les données doivent être ignorées après cet appel.

DrvSaveScreenBits doit retourner TRUE si les données ont été restaurées à l’affichage, ou FALSE si les données ne peuvent pas être restaurées.

SS_FREE

Les données identifiées par ident ne sont plus nécessaires et peuvent être libérées. La valeur de prcl n’est pas définie et ne doit pas être utilisée. Le pilote ne doit pas restaurer le rectangle enregistré dans l’affichage.

DrvSaveScreenBits doit retourner TRUE.

ident

Pointeur vers une valeur définie par le pilote qui a été retournée par un appel précédent à DrvSaveScreenBits si iMode est SS_RESTORE ou SS_FREE. Le pilote doit ignorer ce paramètre lorsque iMode est SS_SAVE.

prcl

Pointeur vers une structure RECTL qui définit la partie de l’écran à enregistrer ou à restaurer.

Valeur retournée

La valeur de retour dépend de la valeur du paramètre iMode .

Remarques

Certains pilotes d’affichage peuvent être en mesure de déplacer des données vers ou depuis la mémoire de périphérique hors écran beaucoup plus rapidement que la zone peut être redessinée. Cela peut être utile lorsque le Gestionnaire de fenêtres doit afficher un menu ou une boîte de dialogue.

DrvSaveScreenBits est facultatif pour les pilotes d’affichage.

Configuration requise

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

Voir aussi

SURFOBJ