// printoem.h
typedef struct _DEVOBJ {
DWORD dwSize;
PDEVOEM pdevOEM;
HANDLE hEngine;
HANDLE hPrinter;
HANDLE hOEM;
PDEVMODE pPublicDM;
PVOID pOEMDM;
PDRVPROCS pDrvProcs;
} *PDEVOBJ, DEVOBJ;
View the official Windows Driver Kit DDI referenceNo description available.
The DEVOBJ structure is used as an input argument to several of a rendering plug-in's COM interface methods.
dwSizeSpecifies the size, in bytes, of the DEVOBJ structure. Supplied by the Unidrv or Pscript5 driver.
pdevOEMPointer to the rendering plug-in's private PDEV structure, as returned by IPrintOemUni::EnablePDEV or IPrintOemPS::EnablePDEV. Supplied by the Unidrv or Pscript5 driver.
hEngineGDI handle to the physical device. This handle is received by the printer driver's DrvCompletePDEV function, as the function's hdev argument.
hPrinterSpooler's handle to the printer. This handle is received by the printer driver's DrvEnablePDEV function, as the function's hDriver argument.
hOEMPlug-in instance handle. Supplied by the Unidrv or Pscript5 driver.
pPublicDMPointer to the printer's DEVMODEW structure. Supplied by the Unidrv or Pscript5 driver.
pOEMDMPointer to the rendering plug-in's private DEVMODEW structure members. Supplied by the Unidrv or Pscript5 driver.
pDrvProcsNot used. In a previous version of the interface, this was a pointer to a DRVPROCS structure.
The DEVOBJ structure is accessible to graphics DDI hooking functions through the SURFOBJ structure's dhpdev member. For more information, see IPrintOemUni::EnablePDEV or IPrintOemPS::EnablePDEV.