Я создавал программу для простой настройки компьютеров с новым изображением (настройка 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, но мне не очень повезло с этим.Спасибо!