A normal device context (also called a standard or noncached device context) links a presentation space with any nonwindow output device. Use DevOpenDC to obtain a device context handle to one of the six normal device contexts listed in the following table. Each of the six normal device contexts must be closed by DevCloseDC before your application is closed.
┌────────────────────┬────────────────────┬────────────────────┐ │DC Type │Purpose │Usage │ ├────────────────────┼────────────────────┼────────────────────┤ │Queued │Links a presentation│Applications use │ │ │space with a printer│queued device │ │ │or plotter shared by│contexts to offload │ │ │multiple │printing control │ │ │applications sending│from the │ │ │spooled print jobs │application. │ │ │to the print queue. │ │ │ │Queued device │ │ │ │contexts store print│ │ │ │jobs by using a │ │ │ │program called print│ │ │ │spooler, which keeps│ │ │ │track of the order │ │ │ │in which the jobs │ │ │ │arrive at the │ │ │ │printer and in which│ │ │ │they are printed. │ │ ├────────────────────┼────────────────────┼────────────────────┤ │Direct │Links a presentation│Applications │ │ │space with a printer│normally do not use │ │ │or plotter, directly│direct device │ │ │bypassing the │contexts, unless │ │ │spooler and print │they are avoiding │ │ │queue. A direct │the queue (for │ │ │device context is │security reasons) or│ │ │used by the spooler │going directly to a │ │ │to process jobs as │dedicated machine. │ │ │they are removed │ │ │ │from the print │ │ │ │queue. │ │ ├────────────────────┼────────────────────┼────────────────────┤ │Information │Links a presentation│An application can │ │ │space with a printer│use an information │ │ │or plotter, directly│device context with │ │ │enabling device │lower memory │ │ │information to be │overhead, rather │ │ │queried, but │than use a direct │ │ │producing no output │device context, │ │ │on the device. │which could provide │ │ │ │the same │ │ │ │information. │ ├────────────────────┼────────────────────┼────────────────────┤ │Memory │Links a presentation│Applications use │ │ │space with a bit │memory device │ │ │map. │contexts for drawing│ │ │ │to the bit map and │ │ │ │using it as a source│ │ │ │or target of BitBlt │ │ │ │operations. │ ├────────────────────┼────────────────────┼────────────────────┤ │Metafile │A special device │Only applications │ │ │context that enables│that use metafiles │ │ │a picture output to │use metafile device │ │ │its associated │contexts. │ │ │presentation space │ │ │ │to be recorded in a │ │ │ │metafile for │ │ │ │interchange for │ │ │ │future use. │ │ ├────────────────────┼────────────────────┼────────────────────┤ │Metafile_NoQuery │Functionally │If attributes of the│ │ │identical to │presentation space │ │ │metafile; however, │are not to be │ │ │querying of │queried, this device│ │ │presentation space │context offers │ │ │attributes is not │improved performance│ │ │allowed. │over metafile. │ └────────────────────┴────────────────────┴────────────────────┘