DOCINFOA structure (wingdi.h)

The DOCINFO structure contains the input and output file names and other information used by the StartDoc function.


typedef struct _DOCINFOA {
  int    cbSize;
  LPCSTR lpszDocName;
  LPCSTR lpszOutput;
  LPCSTR lpszDatatype;
  DWORD  fwType;



The size, in bytes, of the structure.


Pointer to a null-terminated string that specifies the name of the document.


Pointer to a null-terminated string that specifies the name of an output file. If this pointer is NULL, the output will be sent to the device identified by the device context handle that was passed to the StartDoc function.


Pointer to a null-terminated string that specifies the type of data used to record the print job. The legal values for this member can be found by calling EnumPrintProcessorDatatypes and can include such values as raw, emf, or XPS_PASS. This member can be NULL. Note that the requested data type might be ignored.


Specifies additional information about the print job. This member must be zero or one of the following values.

Value Meaning
DI_APPBANDING Applications that use banding should set this flag for optimal performance during printing.
DI_ROPS_READ_DESTINATION The application will use raster operations that involve reading from the destination surface.



The wingdi.h header defines DOCINFO as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.


Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header wingdi.h (include Windows.h)

See also

Print Spooler API Structures