Добавление сетевого принтера с C # - PullRequest
1 голос
/ 08 июля 2019

Я создавал программу для простой настройки компьютеров с новым изображением (настройка DNS-серверов, IP-адреса, шлюза, добавление в AD, добавление дополнительных принтеров и т. Д.).У меня он работал в PowerShell, но я пытался перенести его на C #, главным образом, чтобы объединить множество небольших скриптов в один, добавить приятный пользовательский интерфейс и, как практика, стать лучше в C #.Пока все шло хорошо, но у меня были некоторые проблемы с добавлением принтера.

Вот сценарий PowerShell, который я использовал для настройки сетевого принтера:

Add-PrinterPort -name ESDPRT500 -PrinterHostAddress $ReceiptPrinterIP
Set-Printer -Name "EPSON TM-T88IV Receipt" -PortName ESDPRT500

I 'Вы просматривали следующий код C #, но он, кажется, устанавливает принтер только по порту TCP / IP, тогда как я считаю, что мой порт находится в разделе «EPSON Port Handler»?

ManagementClass portClass = new ManagementClass("Win32_TCPIPPrinterPort");
ManagementObject portObject = portClass.CreateInstance();
portObject["Name"] = portName;
portObject["HostAddress"] = "174.30.164.15";
portObject["PortNumber"] = portNumber;
portObject["Protocol"] = 1;
portObject["SNMPCommunity"] = "public";
portObject["SNMPEnabled"] = true;
portObject["SNMPDevIndex"] = 1;
PutOptions options = new PutOptions();
options.Type = PutType.UpdateOrCreate;             
portObject.Put(options);

Может кто-нибудь указать мнеправильное направление с учетом того, как настроен мой принтер?Я нашел примеры установки драйверов и добавления принтеров через порты TCP / IP #s, но мне не очень повезло с этим.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...