PrinterSettings - Changing, Storing and Loading Printer Settings


Desktop-as-a-Service Designed for Any Cloud ? Nutanix Frame


Several years ago I had to implement the ability to change the printer and it's settings from within a programm. The output had to be distributed to 3 or more printers. The settings had to be stored to disk to be able to be loaded. It was desired to conform to the MFC Framework.

How to use

Declare the class CPrinterSettings in a CDocument derived class or wherever you find it useful.

#include "PrinterSettings.h"

class CPrnsetupDlg : public CDialog
	CPrinterSettings m_prn_setting1;
	CPrinterSettings m_prn_setting2;

To get a copy of the original MFC printer settings call CopyDefaultMfcPrinter().

	// Get MFC's default printer

To let the user change the settings e.g. paper orientation or printer resolution call PrinterSetup( CWnd* pWnd ).


To cause MFC to use your settings call SetThisPrinter().

	// make m_prn_setting1 the MFC standard printer

	// later you may call RestorePrinter() to
	// restore earlier settings.

To load or save your settings call Save(LPCTSTR filename ) or Load(LPCTSTR filename ).

	// Save our settings to file
	m_prn_setting1.Save( "testfilename");

	// load settings, store them in m_prn_settings1
	m_prn_setting1.Load( "testfilename" ));


Download demo project - 17 Kb

The name of the project is "prnsetup.dsw" (build with VC 6 )

Download source - 5 Kb

The source files are named: PrinterSettings.h and PrinterSettings.cpp


Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date