How do I set the windows default printer in C#.NET?
A:
You can use WMI as well.
http://cheeso.members.winisp.net/srcview.aspx?file=printer.cs
Cheeso
2009-06-09 20:10:28
+2
A:
using System; using System.Drawing.Printing; using System.Windows.Forms; using System.Runtime.InteropServices;
namespace WindowsFormsApplication1 { public partial class Form1 : Form {
private void listAllPrinters()
{
foreach (var item in PrinterSettings.InstalledPrinters)
{
this.listBox1.Items.Add(item.ToString());
}
}
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
string pname = this.listBox1.SelectedItem.ToString();
myPrinters.SetDefaultPrinter(pname);
}
public Form1()
{
InitializeComponent();
listAllPrinters();
}
}
public static class myPrinters
{
[DllImport("winspool.drv", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool SetDefaultPrinter(string Name);
}
}
Johan
2009-12-01 20:08:46