1. ホーム
  2. .net

[解決済み] .NETでデフォルトのプリンタを取得する最良の方法は何ですか?

2023-04-21 11:16:30

質問

デフォルトのプリンタ名を取得する必要があります。私は C# を使用するつもりですが、これはフレームワークの質問というより、言語固有のものではないと思います。

どのように解決するのですか?

私が見つけた最も簡単な方法は、新しい PrinterSettings オブジェクトを作成することです。 これはすべてのデフォルト値で始まるので、その 名前 プロパティをチェックして、デフォルト・プリンタの名前を取得することができます。

PrinterSettings は、System.Drawing.dll のネームスペースにある System.Drawing.Printing .

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

別の方法として、静的な PrinterSettings.InstalledPrinters メソッドを使ってすべてのプリンタ名のリストを取得し、それから PrinterName プロパティを設定し IsDefaultPrinter . 私はこれを試したことはありませんが、ドキュメントではうまくいかないようです。 どうやら IsDefaultPrinter が真のときのみ PrinterName が明示的に設定されていない場合のみ真となります。