commdlg.h

DEVNAMES

Definición

typedef struct tagDEVNAMES { // dvnm  
    WORD wDriverOffset; 
    WORD wDeviceOffset; 
    WORD wOutputOffset; 
    WORD wDefault; 
    // los nombres del controlador, dispositivo y puerto siguen a wDefault 
} DEVNAMES;

la estructura DEVNAMES contiene cadenas que identifican el controlador, el dispositivo y el puerto de salida de una impresora. La función PrintDlg usa esas cadenas para inicializar los miembros en el cuadro de diálogo de impresión definido por el sistema. Cuando los usuarios cierran el cuadro de diálogo, la información sobre la impresora seleccionada se devuelve en esta estructura.

Descripción

wDriverOffset: (Entrada/Salida) Especifica el desplazamiento en caracteres desde el principio de esta estructura a una cadena terminada con cero que contiene el nombre de fichero (sin extensión) del controlador de la impresora. A la entrada, esta cadena se usa para determinar la impresora a mostrar inicialmente en el cuadro de diálogo.

wDeviceOffset: (Entrada/Salida) Especifica el desplazamiento en caracteres desde el principio de esta estructura a una cadena terminada con cero (con un máximo de 32 bytes inlcuyendo el nulo) que contiene el nombre del dispositivo. Esta cadena debe ser idéntica al miembro dmDeviceName de la estructura DEVMODE.

wOutputOffset: (Entrada/Salida) Especifica el desplazamiento en caracteres desde el principio de esta estructura a una cadena terminada con cero que contiene el nombre de la salida física (puerto de salida).

wDefault: Especifica si las cadenas contenidas en la estructura DEVNAMES identifican a la impresora predeterminada. Esta cadena se usa para verificar que la impresora predeterminada no ha cambiado desde la última operación de impresión. Si alguna de las cadenas no coincide, se muestra un mensaje de aviso informando al usuario de que el documento puede necesitar ser reformateado.

A la salida, el miembro wDefault cambia sólo si el cuadro de preparación de impresión fue mostrado y el usuario pulsó el botón de aceptar. La bandera DN_DEFAULTPRN se usa si la fue seleccionada la impresora predeterminada. Si se selecciona una impresora específicamente, la bandera no se usa. El resto de las banderas de este miembro están reservadas para uso interno por el procedimiento de diálogo de impresión.