STRUCTURE DOCUMENTPROPERTYHEADER (winddiui.h)

La structure DOCUMENTPROPERTYHEADER est utilisée comme paramètre d’entrée pour la fonction DrvDocumentPropertySheets d’une interface d’imprimante.

Syntaxe

typedef struct _DOCUMENTPROPERTYHEADER {
  WORD     cbSize;
  WORD     Reserved;
  HANDLE   hPrinter;
  LPTSTR   pszPrinterName;
  PDEVMODE pdmIn;
  PDEVMODE pdmOut;
  DWORD    cbOut;
  DWORD    fMode;
} DOCUMENTPROPERTYHEADER, *PDOCUMENTPROPERTYHEADER;

Membres

cbSize

Taille, en octets, de la structure DOCUMENTPROPERTYHEADER.

Reserved

Réservé. Doit être zéro.

hPrinter

Poignée d’imprimante.

pszPrinterName

Pointeur vers une chaîne null qui représente le nom de l’imprimante.

pdmIn

Pointeur vers une structure DEVMODEW d’entrée que la fonction DrvDocumentPropertySheets doit copier dans la structure DEVMODEW interne de la DLL de l’interface d’imprimante (avant l’affichage de la feuille de propriétés, le cas échéant). Si DM_IN_BUFFER ou DM_MODIFY n’est pas défini dans fMode, ce pointeur est NULL.

pdmOut

Pointeur vers une structure DEVMODEW de sortie dans laquelle la fonction DrvDocumentPropertySheets doit copier le contenu interne de la DLL DEVMODEW de l’interface d’imprimante (une fois la feuille de propriétés affichée, le cas échéant). Si DM_OUT_BUFFER ou DM_COPY n’est pas défini dans fMode, ce pointeur est NULL.

cbOut

Spécifie la taille, en octets, de la mémoire tampon à laquelle point pdmOut . Pour plus d'informations, consultez la section Notes qui suit.

fMode

Un ou plusieurs indicateurs de bits répertoriés dans le tableau suivant. (Les indicateurs sont définis dans les fichiers d’en-tête Wingdi.h et Winddiui.h.)

Indicateur Définition
Aucun indicateur défini (autrement dit, fMode est 0). La fonction DrvDocumentPropertySheets doit retourner la taille, en octets, de sa structure DEVMODEW, y compris tous les membres publics et privés, dans le membre cbOut .
DM_ADVANCED Si elle est définie, la fonction DrvDocumentPropertySheets ne doit créer que la page de document Avancé.

Si elle n’est pas définie, la fonction DrvDocumentPropertySheets doit créer à la fois les pages de document PageSetup et Advanced.

(Consultez la description du membre pDlgPage de la structure COMPROPSHEETUI .)

DM_IN_BUFFER ou

DM_MODIFY

L’appelant a fourni un pointeur de structure DEVMODEW dans pdmIn, et la fonction DrvDocumentPropertySheets doit mettre à jour sa structure DEVMODEW interne pour refléter le contenu du DEVMODEW fourni.
DM_IN_PROMPT ou

DM_PROMPT

La fonction DrvDocumentPropertySheets doit créer ses pages de feuille de propriétés.

(Cet indicateur n’est jamais défini si le paramètre pPSUIInfo de la fonction DrvDocumentPropertySheets est NULL.)

DM_NOPERMISSION Le rappel _CPSUICALLBACK typé de la DLL d’interface d’imprimante ne doit pas permettre à l’utilisateur de modifier les propriétés sur les pages de la feuille de propriétés affichées.
DM_OUT_BUFFER ou

DM_COPY

L’appelant a fourni un pointeur de structure DEVMODEW dans pdmOut, et la fonction DrvDocumentPropertySheets doit copier le contenu de sa structure DEVMODEW interne dans le DEVMODEW fourni.
DM_PROMPT_NON_MODAL La fonction DrvDocumentPropertySheets doit créer ses pages de feuilles de propriétés et lancer une interface utilisateur non modale.

(Cet indicateur n’est jamais défini si le paramètre pPSUIInfo de la fonction DrvDocumentPropertySheets est NULL.)

DM_USER_DEFAULT Non utilisé.
DM_OUT_DEFAULT ou

DM_UPDATE

Non utilisé.

Remarques

La valeur d’entrée du membre cbOut n’est pas nécessairement égale à la taille de la mémoire tampon pointée par le membre pdmOut . Par exemple, lorsque le paramètre pPSUInfo de la fonction DrvDocumentPropertySheets est NULL, et si le membre fMode de la structure DOCUMENTPROPERTYHEADER est égal à zéro ou que le membre pdmOut de la même structure est NULL, un pilote doit écrire la taille totale de la structure DEVMODEW de l’imprimante (y compris les membres de la structure publique et privée) dans le membre cbOut . Dans ce cas, un pilote doit traiter le membre cbOut comme un membre « write-only ». L’exemple « plotter » fourni avec le Kit de pilotes Windows (WDK) montre comment utiliser correctement le membre cbOut .

Configuration requise

   
En-tête winddiui.h (inclure Winddiui.h)

Voir aussi

COMPROPSHEETUI

DEVMODEW

DrvDocumentPropertySheets