Algo que falta na instalação do PowerShell na impressora

1

Estou tentando preparar um script do PowerShell para instalar impressoras. Isso será para uma tarefa automatizada em que os nomes das impressoras e os endereços IP serão fornecidos conforme disponíveis. A maior parte do script parece funcionar, mas algo está faltando. Abaixo está o roteiro, então vou esclarecer a falta.

$knownPrinterDriver = "DTC4500e Card Printer"
$ipPort = 5400
$finalPortName = "MyPort_5400"
$ipAddress = "192.168.30.13"
$finalPrinterName = "Printer1"

$goodDriver = Get-PrinterDriver | Where-Object { $_.Name -eq $knownPrinterDriver }
if( $goodDriver.Count -eq 0 )
{
   # no printer driver found
   return -1
}

# SHOULD only be ONE, so get it as reference    
$oneDriver = $goodDriver[0]

# using the ' backtick mark as continuation line
Add-PrinterPort '
   -Name $finalPortName  '
   -PrinterHostAddress $ipAddress  '
   -PortNumber $ipPort

# Re-check if printer was actually loaded or not.
$availPorts = Get-PrinterPort | Where-Object { $_.Name -eq $finalPortName }
if( $availPorts.Count -eq 0 )
{
   return -2
}

$onePort = $availPorts[0]


Add-Printer '
   -DriverName $oneDriver.Name '
   -Name $finalPrinterName '
   -PortName $onePort.Name

# Re-check if printer was actually loaded or not.
$availPrinters = Get-Printer | Where-Object { $_.Name -eq $finalPrinterName }
if( $availPrinters.Count -eq 0 )
{
   return -3
}

return 1

Então, depois de executar o script, ele cria a porta, sem problemas. Cria a impressora associada à porta, sem problemas.

Agora, vou para Impressoras & Configurações

(obviamenteeditadoparamostrarosdois)Vocêpodeverqueaimpressoramostraaopçãoderemoverodispositivo,oscriptnão.Alémdisso,segundaparte.Aotentarexecutaroutroprogramapesquisandoodispositivo,ostatusé"desconhecido" vs pronto ou off-line.

Sugestões? Aprecie isso.

    
por DRapp 21.11.2018 / 19:38

1 resposta

1

Pergunta 1

No seu cmdlet Add-PrinterPort, você não tem a parte SNMP, é esse parâmetro que fará com que o spooler coloque o status da impressora. (Desativar a parte SNMP também desativará qualquer software de monitor de impressão que venha com o driver)

-SNMP Ativa o SNMP e especifica o índice para o gerenciamento da porta da impressora TCP / IP.

-SNMPCommunity Especifica o nome da comunidade SNMP para gerenciamento de porta de impressora TCP / IP.

Pergunta 2

Seu script cria uma porta TCP / IP local, portanto, somente um administrador pode removê-lo ou não, verifique o direito do usuário / UAC, pois suspeito que a outra impressora seja uma impressora mapeada, não uma impressora local.

    
por 21.11.2018 / 19:44