读书人

怎么获得默认打印机的名字

发布时间: 2013-09-07 14:12:44 作者: rapoo

如何获得默认打印机的名字?


using System.Management;
private string GetDefaultPrint()
{
string selectPrinterName = "";

string _select = "SELECT * FROM Win32_Printer";
ManagementObjectSearcher query = new ManagementObjectSearcher(_select);
ManagementObjectCollection printCollection = query.Get();

foreach (ManagementObject p in printCollection)
{

if(p. ("SetDefaultPrinter") != null) //如何判断?
{
selectPrinterName = p["Name"].ToString();
break;
}

}

return selectPrinterName;
}


[解决办法]
PrinterSettings settings = new PrinterSettings();
Console.WriteLine(settings.PrinterName);



or


public static string GetDefaultPrinterName()
{
var query = new ObjectQuery("SELECT * FROM Win32_Printer");
var searcher = new ManagementObjectSearcher(query);

foreach (ManagementObject mo in searcher.Get())
{
if (((bool?) mo["Default"]) ?? false)
{
return mo["Name"] as string;


}
}

return null;
}

读书人网 >C#

热点推荐