Compartir a través de


Estructura DOCUMENTPROPERTYHEADER (winddiui.h)

La estructura DOCUMENTPROPERTYHEADER se usa como parámetro de entrada para la función de DrvDocumentPropertySheets de una interfaz de impresora DLL.

Sintaxis

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

Miembros

cbSize

Tamaño, en bytes, de la estructura DOCUMENTPROPERTYHEADER.

Reserved

Reservado. Debe ser cero.

hPrinter

Controlador de impresora.

pszPrinterName

Puntero a una cadena terminada en NULL que representa el nombre de la impresora.

pdmIn

Puntero a una estructura DEVMODEW de entrada que la función DrvDocumentPropertySheets debe copiarse en la estructura interna DEVMODEW de la interfaz de impresora (antes de que se muestre la hoja de propiedades, si procede). Si DM_IN_BUFFER o DM_MODIFY no se establece en fMode, este puntero se NULL.

pdmOut

Puntero a una salida estructura de DEVMODEW en la que la función DrvDocumentPropertySheets debe copiar el contenido interno del DEVMODEW de la interfaz de impresora (después de que se muestre la hoja de propiedades, si procede). Si DM_OUT_BUFFER o DM_COPY no se establece en fMode, este puntero es null.

cbOut

Especifica el tamaño, en bytes, del búfer al que puntos pdmOut. Para obtener más información, vea la siguiente sección Comentarios.

fMode

Una o varias de las marcas de bits enumeradas en la tabla siguiente. (Las marcas se definen en los archivos de encabezado Wingdi.h y Winddiui.h).

Bandera Definición
No hay marcas establecidas (es decir, fMode es 0). La función DrvDocumentPropertySheets debe devolver el tamaño, en bytes, de su estructura DEVMODEW, incluidos todos los miembros públicos y privados, en el miembro cbOut de.
DM_ADVANCED Si se establece, la función DrvDocumentPropertySheets solo debe crear la página del documento Avanzado. Si no se establece, la función de DrvDocumentPropertySheets debe crear las páginas de documentos PageSetup y Advanced. (Vea la descripción del miembro de pDlgPage de la estructura COMPROPSHEETUI de).
DM_IN_BUFFER o DM_MODIFY El autor de la llamada ha proporcionado un puntero de estructura DEVMODEW en pdmIny el función DrvDocumentPropertySheets debe actualizar su estructura INTERNA DEVMODEW para reflejar el contenido del DEVMODEW proporcionado.
DM_IN_PROMPT o DM_PROMPT La función drvDocumentPropertySheets debe crear sus páginas de hojas de propiedades. (Esta marca nunca se establece si el parámetro DrvDocumentPropertySheetspPSUIInfo es null).
DM_NOPERMISSION La devolución de llamada con tipo _CPSUICALLBACKdel archivo DLL de la interfaz de impresora no debe permitir al usuario modificar las propiedades en las páginas de la hoja de propiedades mostradas.
DM_OUT_BUFFER o DM_COPY El autor de la llamada ha proporcionado un puntero de estructura DEVMODEW en pdmOuty la función DrvDocumentPropertySheets debe copiar el contenido de su estructura DEVMODEW interna en el DEVMODEW proporcionado.
DM_PROMPT_NON_MODAL La función DrvDocumentPropertySheets debe crear sus páginas de hojas de propiedades e iniciar una interfaz de usuario no modal. (Esta marca nunca se establece si el parámetro DrvDocumentPropertySheetspPSUIInfo es null).
DM_USER_DEFAULT No se usa.
DM_OUT_DEFAULT o DM_UPDATE No se usa.

Observaciones

El valor de entrada del miembro cbOut no es necesariamente igual al tamaño del búfer al que apunta el miembro pdmOut. Por ejemplo, cuando el parámetro pPSUInfo de la función DrvDocumentPropertySheets es NULLy si el miembro fMode de la estructura DOCUMENTPROPERTYHEADER es cero, o el miembro pdmOut de la misma estructura es NULL, un controlador debe escribir el tamaño total de la estructura DEVMODEW de la impresora (incluidos los miembros de estructura pública y privada) en el miembro cbOut. En tal caso, un controlador debe tratar el miembro cbOut como un miembro de solo escritura. Por lo tanto, el controlador no debe usar miembro cbOut como tamaño del búfer al que apunta el miembro pdmOut si se ha llamado a la función DrvDocumentPropertySheets. El ejemplo de "trazador" que se incluye con el Kit de controladores de Windows (WDK) muestra cómo usar correctamente el miembro cbOut.

Requisitos

Requisito Valor
encabezado de winddiui.h (incluya Winddiui.h)

Consulte también

COMPROPSHEETUI

DEVMODEW

DrvDocumentPropertySheets

ejemplo de controlador de trazador MSPLOT