我需要获取默认的打印机名称。我将使用C#,但我怀疑这更多是一个框架问题,并且不是特定于语言的。

最佳答案

我发现最简单的方法是创建一个新的PrinterSettings对象。它以所有默认值开头,因此您可以检查其Name属性以获取默认打印机的名称。
PrinterSettings在 namespace System.Drawing.Printing的System.Drawing.dll中。

PrinterSettings settings = new PrinterSettings();
Console.WriteLine(settings.PrinterName);

或者,您可以使用静态PrinterSettings.InstalledPrinters方法获取所有打印机名称的列表,然后设置PrinterName属性并检查IsDefaultPrinter。我没有尝试过,但是文档似乎表明它不起作用。显然,仅当未明确设置PrinterName时,IsDefaultPrinter才为true。

07-28 09:46