The PRINTER_DEFAULTS structure specifies the default data type, environment, initialization data, and access rights for a printer.
typedef struct _PRINTER_DEFAULTS { // pd
LPTSTR pDatatype;
LPDEVMODE pDevMode;
ACCESS_MASK DesiredAccess;
} PRINTER_DEFAULTS;
This member can be set to PRINTER_ACCESS_ADMINISTER, PRINTER_ACCESS_USE, or any generic security value (for example, WRITE_DACL). If an application wishes to open a printer to perform administrative tasks, such as the SetPrinter function, it must open the printer with PRINTER_ACCESS_ADMINISTER access.
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in winspool.h.
Unicode: Defined as Unicode and ANSI structures.
Printing and Print Spooler Overview, Printing and Print Spooler Structures, DeletePrinter, DEVMODE, OpenPrinter, SetPrinter