Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Список принтеров в системе


Автор: Pit_Bul 28.8.2007, 09:06
как программно получить список принтеров в системе

Автор: Pit_Bul 28.8.2007, 09:58
Код

  using System.Drawing.Printing;

            foreach (string printerName in PrinterSettings.InstalledPrinters)
            {
                Console.WriteLine(printerName);
            }


вот нашол,  smile 

Автор: Wizard_Memfis 28.8.2007, 10:00
Я могу ошибаться, но вроде так:
Код

using System;
using System.Collection;
using IWshRuntimeLibrary;

namespace Print
{
     class AllPrinterClass
     {
          static void Main()
          {
                    WshNetwork network = new WshNetwork();
                    foreach( IEnumerable printer in network.EnumPrinterCollection())
                    {
                           Console.WirteLine(printer.ToString());
                    }
          }
     }
}

Автор: Pit_Bul 28.8.2007, 20:31
Wizard_Memfis, этот пример из книги П. Агурова "С# сборник рецептов". Я про него знаю, но неудобность этого метода в том что за собой надо таскать библиотеку IWshRuntimeLibrary и он выбирает принтеры вместе с портами в один список, что в свою очередь тоже не очень удобно  smile 

Автор: RWander 31.8.2007, 14:44
Цитата(Pit_Bul @  28.8.2007,  22:31 Найти цитируемый пост)
из книги П. Агурова "С# сборник рецептов"

ссылочку можно, если в электронном варианте smile

Автор: Jlekc 31.8.2007, 20:49
Код

ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Printer");
foreach (ManagementObject printer in searcher.Get())
      Console.WriteLine(printer["Name"]);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)