Adicione impressora de rede usando o comando /Powershell após exportá-la de uma máquina para outra Windows 10/11

Adicione impressora de rede usando o comando /Powershell após exportá-la de uma máquina para outra Windows 10/11

MIRAR :Para exportar a impressora de rede de uma máquina Windows 10 para um arquivo de saída e usar esse arquivo de saída, importe-a para outra máquina Windows 10 na mesma rede.

Trabalho de pesquisa:

O seguinte cmd do Powershell mostra oImpressoras mapeadaspara um usuário:

cmdlet1)

Get-WMIObject Win32_Printer -ComputerName $env:COMPUTERNAME | where{$_.Name -like “*\\*”} | select sharename,name 

OBSERVAÇÃO: O cmd acima não mostra oNome do motoristaque é um parâmetro crítico para o próximo comando

O comando que pretendo usar para importar a impressora de rede:

cmdlet2)

Sintaxe:

rundll32 printui.dll,PrintUIEntry /Xs /n\SERVER\PRINTERSHARENAMENome do motorista"Lexmark C752 PS3"

como não tinha o drivername, tentei executá-lo mesmo assim, pois o driver já está instalado na segunda caixa do Windows 10.

rundll32 printui.dll,PrintUIEntry /Xs /n"\tdr09\AlphaIT(prtq3) KONICA MINOLTA C550i"

Mas recebo um erro depois de executar o cmd:

================================================= =========================

[Título da janela] Impressoras

[Instrução Principal] Os argumentos são inválidos.

[OK]

================================================= =========================

Problema:

1)O cmdlet 1 não fornece oNome do motoristaportanto, o cmdlet 2 está falhando com o erro acima.

================================================= =====================

Método 2 Com base no feedback de @Massimo

Tentei usar o seguinte comando:

obter impressora | onde{$_.Name -like "\"} | Formato-Tabela -AutoSize insira a descrição da imagem aqui

A saída fica assim:

Nome ComputerName Tipo DriverName PortName Compartilhado Publicação


\trq02\AXEIT(ptq2) KONICA MINOLTA C550i ptq02 Conexão KONICA MINOLTA C650iSeries 10.246.0.173 True F...

Posso canalizá-lo para um arquivo de texto, mas como posso fazer o PowerShell ler esse arquivo e adicionar a impressora.

OBSERVAÇÃO:Se eu executar o seguinte cmd manualmente, a adição de impressora funcionará bem.

adicionar impressora "\trq02\AXEIT(ptq2) KONICA MINOLTA C550i"

Responder1

Por que você está se preocupando com WMI e rundll32?

Você deve usar os comandos nativos do PowerShell Get-Printere o Add-Printer.


Exemplo:

No primeiro computador, use:

Get-Printer | where {$_.Type -eq 'Connection'} | Export-Csv -Path 'C:\Printers.csv'

Copie o arquivo para o segundo computador e use:

$printers = Import-Csv -Path 'C:\Printers.csv'

foreach($printer in $printers)
{
    Add-Printer -ConnectionName ($printer.Name)
}

informação relacionada