首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

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

2013-09-07 
如何获得默认打印机的名字?using System.Managementprivate string GetDefaultPrint(){string selectPrin

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


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;
}

热点排行