If you only want to get or set the DEVMODE struct, you can use the PRINTER_INFO_9 struct instead.
Contains information about the initialization and environment of a printer or a display device.
1/19/2017 5:13:27 AM - tonyedgecombe-82.69.13.77
The PRINTER_INFO_9 structure specifies the per-user default printer settings and can be used instead of the [PRINTER_INFO_2] struct, if you only want to get or set the [DEVMODE] struct.