Как изменить настройки портов принтера на сервере Windows Server 2019, отключив порт port1 и включив port4, с сохранением остальных портов, используя скрипты vbs или PowerShell?
Для решения данной задачи можно воспользоваться скриптом на языке VBScript `prnport.vbs`, который находится в папке C:\Windows\System32\Printing_Admin_Scripts\ru-RU\. Данный скрипт позволяет создавать, удалять и перечислять порты принтера.
Для изменения настроек портов принтера на сервере Windows Server 2019 с помощью VBScript можно использовать следующий код:
```vbscript
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colPorts = objWMIService.ExecQuery("SELECT * FROM Win32_TCPIPPrinterPort")
For Each objPort In colPorts
If objPort.Name = "port1" Then
objPort.Delete_
End If
Next
Set objNewPort = objWMIService.Get("Win32_TCPIPPrinterPort").SpawnInstance_
objNewPort.Name = "port4"
objNewPort.Protocol = 1
objNewPort.HostAddress = "printer_ip_address"
objNewPort.PortNumber = 9100
objNewPort.SNMPEnabled = False
objNewPort.Put_
```
Этот скрипт удалит порт с именем "port1" и создаст новый порт с именем "port4", указанным IP-адресом принтера и другими необходимыми настройками.
Также данную задачу можно решить с использованием скриптов на PowerShell.
попробуй powershell
$printerName = "имя_принтера" # Снятие "галочки" с порта port1 (Get-PrintConfiguration -PrinterName $printerName).PrinterPortName.Remove("port1") # Добавление "галочки" для порта port4 (Get-PrintConfiguration -PrinterName $printerName).PrinterPortName.Add("port4")
Не совсем уверен но кажется нужно после сохранить изменения.
я на нашел готовых примеров использования, а chatgpt генерит что то типа этого, чему я не очень верю:
Set-PrintConfiguration -PrinterName $printerName -PrinterPortName (Get-PrintConfiguration -PrinterName $printerName).PrinterPortName