using System.Management;
private ManagementObjectSearcher query;
private ManagementObjectCollection queryCollection;
string _classname="SELECT * FROM Win32_Printer";
query=new ManagementObjectSearcher(_classname);
queryCollection = query.Get();
foreach (ManagementObject mo in queryCollection)
{
if (string.Compare(mo["Name"].ToString(),PrinterName,true)==0)
{
mo.InvokeMethod("SetDefaultPrinter",null);
break;
}
}
foreach (string myPName in System.Drawing.Printing.PrinterSettings.InstalledPrinters) { printer.Items.Add(myPName); }using (PrintDialog pd = new PrintDialog()) { defaultprintname = pd.PrinterSettings.PrinterName;//获取默认的打印机名 }