Set the default printer for printing programatically

by Prashant 17. June 2009 00:17

You need to print the document but you don't want to go to control panel or printer and faxes options and just want to get it changed automatically. You can even set the shared local network printer with this code.

Just with the code you can override the system settings and change the default printer for your system.

You need to use the namespace so in order to use the DLLImport attribute.

using System.Runtime.Interopservices;
//Set default printer to the one available with your system or network.
[DllImport("Winspool.drv")]
private static extern bool SetDefaultPrinter(string printerName);

Now on button click or on form load just change the printer you want to use while printing and then change it back to the one before.

//Set the default printer. I have set it as my Adobe PDF printer
SetDefaultPrinter("Adobe PDF");
Share or Bookmark this post…
  • Live
  • Facebook
  • TwitThis
  • del.icio.us
  • Digg
  • DZone
  • Technorati
  • StumbleUpon
  • Google
  • E-Mail

If you enjoyed this post, make sure you subscribe to my RSS feed!

Tags: ,

C#

Powered by BlogEngine.NET 1.5.0.7
Visit blogadda.com to discover Indian blogs

About

Name of authorMy name is Prashant Khandelwal. I am a .NET programmer and technology enthusiast from New Delhi, India.

       

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.
© Copyright 2010

Creative Commons License