Partager via


Fonction IsValidDevmode

La fonction IsValidDevmode vérifie que le contenu d’une structure DEVMODE est valide.

Syntaxe

BOOL IsValidDevmode(
  _In_ PDEVMODE pDevmode,
       size_t   DevmodeSize
);

Paramètres

pDevmode [in]

Pointeur vers le DEVMODE à valider.

DevmodeSize

Taille en octets de la mémoire tampon d’octets d’entrée.

Valeur retournée

TRUE, si le DEVMODE est structurellement valide. Si des erreurs mineures sont détectées, la fonction les corrige et retourne TRUE.

FALSE, si le DEVMODE présente un ou plusieurs problèmes structurels importants. Par exemple, son membre dmSize est mal aligné ou spécifie une mémoire tampon trop petite. En outre, FALSE si pDevmode a la valeur NULL.

Notes

Aucun champ de pilote d’imprimante privée du DEVMODE n’est vérifié, seuls les champs publics.

Les appelants doivent utiliser dmSize+dmDriverExtra pour DevmodeSize uniquement s’ils peuvent garantir que la taille de la mémoire tampon d’entrée est au moins aussi importante. Étant donné que le DEVMODE est généralement des données non approuvées, les valeurs qui se trouvent dans la mémoire tampon d’entrée au niveau des décalages dmSize et dmDriverExtra ne sont pas également approuvées.

Cette fonction est exécutable dans Least-Privileged contexte de compte d’utilisateur (LUA).

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003 [applications de bureau uniquement]
En-tête
Winspool.h
Bibliothèque
Winspool.lib
DLL
Winspool.drv
Noms Unicode et ANSI
IsValidDevmodeW (Unicode) et IsValidDevmodeA (ANSI)

Voir aussi

Impression

Fonctions API du spouleur d’impression

DEVMODE