/
/

Como automatizar a criação de mapeamentos de impressoras locais via GPO e PowerShell

por Team Ninja
How to Automate the Creation of Local Printer Mappings via GPO and PowerShell blog banner image

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Pontos principais

  • Automatizar o mapeamento de impressoras com Preferências de Política de Grupo (GPP): crie um GPO vinculado à UO de destino e adicione uma impressora compartilhada em Configuração do Usuário > Preferências > Configurações do Painel de Controle > Impressoras, informando o caminho do compartilhamento (\\print-server-name\printer-share-name). Ative o Direcionamento no Nível do Item para limitar a impressora a usuários ou grupos específicos e execute gpupdate /force nos dispositivos de destino para aplicar as configurações.
  • Automatizar o mapeamento de impressoras com PowerShell: use Add-Printer -ConnectionName para mapear uma impressora compartilhada por meio de um servidor de impressão ou combine Add-PrinterPort e Add-Printer -DriverName para mapear uma impressora local diretamente pelo endereço IP. Use Set-Printer -IsDefault $true para definir a impressora padrão e execute o script manualmente, via RMM ou como parte de uma implantação maior.
  • Automatizar o mapeamento de impressoras com PowerShell e scripts de logon/logoff: salve um script de mapeamento de impressoras em um caminho compartilhado e dispare-o automaticamente a cada sessão do usuário com schtasks /create … /sc onlogon ou adicionando-o como script de logon em Configuração do Usuário > Configurações do Windows > Scripts (Logon/Logoff) no GPO.
  • Acompanhar o status pelo Registro: depois que a impressora é mapeada com sucesso, grave a data/hora e a lista de impressoras em uma chave personalizada do Registro com Set-ItemProperty. Consulte essa chave com Test-Path e Get-ItemProperty para que o GPP ignore dispositivos já marcados e sinalize os que não estão.
  • Usar direcionamento dinâmico por critérios: obtenha o endereço IP do dispositivo com Get-NetIPAddress ou os grupos a que ele pertence com whoami /groups e use lógica condicional (if/elseif) para chamar Add-Printer -ConnectionName com o caminho da impressora correspondente àquela faixa de IP ou grupo.

O mapeamento de impressoras locais organiza a atribuição de impressoras em ambientes grandes e com vários departamentos, garantindo que os usuários finais imprimam sempre nos equipamentos certos. Também simplifica a atribuição de dispositivos na hora de imprimir, agiliza fluxos de trabalho e aumenta a produtividade com configurações pensadas para o usuário.

Prefere um tutorial em vídeo? Assista a “Como automatizar a criação de mapeamentos de impressoras locais via GPO e PowerShell” para saber mais.

Métodos para um mapeamento eficiente de impressoras locais

Atribuir impressoras manualmente costuma gerar erros e trabalhos de impressão que falham, aumentando o volume de tickets de suporte e sobrecarregando os técnicos. Com automação de TI, os técnicos padronizam as atribuições de impressoras em todos os locais de trabalho e simplificam o pós-imagem e os processos de onboarding.

📌 Pré-requisitos:

  • Windows Server 2012 ou posterior
  • Dispositivos cliente com Windows 10/11 Pro ou Enterprise
  • Impressoras compartilhadas publicadas no Active Directory
  • Execução de scripts ativada
  • Impressoras locais endereçáveis por IP
  • Opcional: plataforma NinjaOne RMM

📌 Estratégias de implantação recomendadas:

Escolha um método

💻
Melhor para usuários individuais
💻💻💻
Melhor para empresas
Método 1: mapear impressoras com Preferências de Política de Grupo (GPP)✓
Método 2: usar o PowerShell para mapear impressoras compartilhadas ou locais✓✓
Método 3: automatizar o mapeamento de impressoras locais com scripts de logon/logoff✓✓
Método 4: acompanhar o status do mapeamento no Registro✓✓
Método 5: implantar scripts direcionados com base em critérios dinâmicos✓✓

Método 1: mapear impressoras com Preferências de Política de Grupo (GPP)

📌 Casos de uso: o GPP conecta usuários ou computadores automaticamente às impressoras mais próximas. Diferente dos antigos scripts de login, mantém as conexões confiáveis e garante que elas não se percam após uma reinicialização. O GPP também aceita configurações de impressora por usuário e para todo o sistema, o que dá mais controle e flexibilidade.

📌 Pré-requisitos:

  • Console de Gerenciamento de Política de Grupo (gpmc.msc)
  • Privilégios de administrador de domínio.

⚠️ Importante: teste as GPPs localmente antes de implantá-las em uma unidade organizacional. (Veja ⚠️ Pontos de atenção.)

  1. Abra o Console de Gerenciamento de Política de Grupo.
  2. Clique com o botão direito na Unidade Organizacional (UO) de destino e selecione Criar um GPO neste domínio e fornecer um link para ele aqui….
  3. Percorra o seguinte caminho:

Configuração do Usuário > Preferências > Configurações do Painel de Controle > Impressoras

  1. Clique com o botão direito em Impressoras, selecione Novo > Impressora Compartilhada e defina os parâmetros.
    • Ação: Criar
    • Caminho do compartilhamento: \\<print-server-name>\<printer share name>
    • Se quiser, marque Definir esta impressora como impressora padrão.

💡 Dica: para descobrir o caminho do compartilhamento, abra o printmanagement.msc e vá até o servidor de impressão desejado. Clique com o botão direito na impressora de destino, selecione Propriedades e abra a guia Compartilhamento.

  1. Na guia Comum, ative o Direcionamento no Nível do Item (ILT) e adicione as condições para aplicar a preferência conforme os critérios definidos.
  2. Abra o PowerShell no dispositivo de destino e digite o comando: gpupdate /force
  3. Confirme as alterações com o seguinte comando do PowerShell:
$computername = # Input your computer name
rundll32 printui.dll,PrintUIEntry /ge /c"\\$computername"

Método 2: usar o PowerShell para mapear impressoras compartilhadas ou locais

📌 Casos de uso: use scripts do PowerShell para mapear impressoras TCP/IP locais ou compartilhadas. Os scripts desta seção também podem ser executados por plataformas RMM, automatizando a atribuição de impressoras aos usuários finais.

📌 Pré-requisitos:

  • Drivers de impressora já instalados.
  • Direitos de administrador.

Exemplo de script para mapear impressora compartilhada:

O script abaixo cria uma conexão com impressoras compartilhadas por meio de um servidor de impressão.

$printersharename = \\<print-server-name>\<printer share name>
# (e.g., \\<print-server-name>\<printer share name>)
Add-Printer -ConnectionName "$printersharename"

💡 Observação: substitua os espaços reservados pelos valores reais do nome do servidor de impressão e do compartilhamento da impressora.

Exemplo de script para mapear impressora TCP/IP local:

Este script cria uma conexão de impressora local no endpoint, enviando os trabalhos direto para a impressora, sem passar pelo servidor de impressão.

$portName = "IP_192.168.1.250"
Add-PrinterPort -Name $portName -PrinterHostAddress "192.168.1.250"Add-Printer -Name "Warehouse Zebra Printer" `
-DriverName "Zebra ZP 500 (ZPL)" `
-PortName $portName

💡Observação: substitua os valores de exemplo pelo endereço IP real da impressora de destino e pelo nome correto do driver disponível no sistema.

Comando para definir uma impressora padrão:

$name = #insert printer name (e.g., Warehouse Zerbra Printer)
Set-Printer -Name "$name" -IsDefault $true

⚠️ Importante: confira a sintaxe do script antes de executá-lo em uma máquina local ou em vários endpoints. (Veja ⚠️ Pontos de atenção.)

Método 3: automatizar o mapeamento de impressoras locais com scripts de logon/logoff

📌 Casos de uso: use o Agendador de Tarefas ou scripts de logon/logoff para garantir um mapeamento de impressoras consistente a cada sessão do usuário. O método também evita o desvio de política, já que a configuração se corrige sozinha no próximo acionamento.

📌 Pré-requisitos:

  • Console de Gerenciamento de Política de Grupo (gpmc.msc)
  • Privilégios de administrador de domínio.
  • Acesso ao Agendador de Tarefas.

Exemplo de script de logon via Prompt de Comando elevado:

Crie um script próprio de mapeamento de impressoras locais ou use um dos exemplos do Método 2. Salve o script como arquivo .ps1 no caminho de sua preferência. Neste exemplo, ele será salvo em "C:\Scripts\MapPrinters.ps1".

schtasks /create /tn "MapPrinters" /tr "powershell.exe -File C:\Scripts\MapPrinters.ps1" /sc onlogon /ru SYSTEM

💡 Observação: o MapPrinters.ps1 não existe por padrão e precisa ser criado manualmente pelos administradores, com a lógica de mapeamento necessária. Depois de criado, guarde o script no controlador de domínio para acesso pelo Active Directory e distribuição via scripts de logon ou logoff.

Configurar o script de logon via GPO:

Outra opção é configurar os scripts de logon no Console de Gerenciamento de Política de Grupo.

  1. Abra o gpmc.msc e crie um GPO vinculado à UO de destino ou edite um já existente.
  2. Percorra o seguinte caminho:

Configuração do Usuário > Configurações do Windows > Scripts (Logon/Logoff)

  1. Adicione o script escolhido como script de logon, localizando e incluindo o arquivo .ps1 correto.
  2. Configure a política Ativar Execução de Scripts para permitir a execução, acessando:

Configuração do Computador > Modelos Administrativos > Componentes do Windows > Windows PowerShell > Ativar Execução de Scripts

Método 4: acompanhar o status do mapeamento no Registro

📌 Casos de uso: use o Registro para marcar dispositivos com as configurações de mapeamento, permitindo que o direcionamento no nível do item (ILT) do GPP pule o remapeamento quando a chave já existir. Isso também ajuda os técnicos a consultar endpoints e identificar rapidamente os dispositivos fora de conformidade para remapeamento.

⚠️ Aviso: erros de configuração no Registro podem causar instabilidade no sistema e afetar o desempenho do dispositivo. (Veja ⚠️ Pontos de atenção.)

Exemplo de script do PowerShell para marcar dispositivos com mapeamento bem-sucedido:

New-Item -Path "HKCU:\Software\Org\PrinterMapping" -Force
Set-ItemProperty -Path "HKCU:\Software\Org\PrinterMapping" -Name "LastMapped" -Value (Get-Date).ToString("u")
Set-ItemProperty -Path "HKCU:\Software\Org\PrinterMapping" -Name "MappedPrinters" -Value "Accounting-Printer, Warehouse Zebra"

Exemplo de consulta do PowerShell às marcas no Registro:

if (Test-Path 'HKCU:\Software\Org\PrinterMapping') { Get-ItemProperty 'HKCU:\Software\Org\PrinterMapping' } else { 'Missing' }

Método 5: implantar scripts direcionados com base em critérios dinâmicos

📌 Casos de uso: implante scripts dinâmicos para coletar o IP e os dados de grupo do endpoint, automatizando a atribuição de impressoras conforme a localização e o departamento do usuário. Usado como script de logon, mantém as atribuições corretas e reduz impressões equivocadas e erros.

⚠️ Aviso: scripts dinâmicos são poderosos, mas arriscados: requisitos vagos, validação fraca e falta de proteções podem gerar configurações incorretas. (Veja ⚠️ Pontos de atenção.)

Exemplo de script de direcionamento por IP no PowerShell:

$ip = (Get-NetIPAddress -AddressFamily IPv4 | Where-Object {$_.PrefixOrigin -eq "Dhcp" }).IPAddress
if ($ip -like "192.168.10.*") {
Add-Printer -ConnectionName "\\PrintServer01\Accounting-Printer"
}
elseif ($ip -like "192.168.20.*") {
Add-Printer -ConnectionName "\\PrintServer01\Sales-Printer"
}

💡 Observação: substitua o nome de grupo de exemplo por um que exista no seu Active Directory. Ajuste também o caminho da impressora para o compartilhamento correto do seu ambiente.

Exemplo de script de direcionamento por grupo no PowerShell:

$groups = (whoami /groups)
if ($groups -match "Accounting") {
Add-Printer -ConnectionName "\\PrintServer01\Accounting-Printer"
}

⚠️ Pontos de atenção

Riscos

Possíveis consequências

Como reverter

Implantar GPPs sem testarAs GPPs podem esconder erros de configuração que prejudicam muito o mapeamento de impressoras locais.Teste as configurações em um ambiente controlado para verificar o efeito e a validade antes de uma implantação ampla.
Sintaxe de script incorretaScripts com erros podem falhar e impedir que as configurações de mapeamento sejam aplicadas.Teste os scripts localmente para confirmar a validade e implante em fases, monitorando o impacto aos poucos e reduzindo riscos.
Erros de configuração no RegistroAlterações erradas no Registro podem afetar seriamente o desempenho e a estabilidade do dispositivo.Faça backup do Registro do Windows antes de qualquer alteração, para facilitar a reversão em caso de erro.
Scripts dinâmicos mal escritosApesar de poderosos, scripts dinâmicos dependem de vários fatores e podem introduzir pontos de falha, resultando em mapeamentos incorretos.Valide os scripts com cuidado, use convenções de nomenclatura claras nas verificações de grupo e fique atento a VPNs ao usar scripts dinâmicos.

Solução de problemas no mapeamento de impressoras locais

Nem sempre tudo sai como planejado ao adicionar impressoras locais via GPO e scripts. Nesta seção, mostramos como corrigir os problemas mais comuns.

Problema nº 1: a impressora não aparece ao adicionar impressora local via GPO

Abra um prompt do PowerShell e execute: gpresult /h report.html

Abra o report.html e verifique se as configurações aplicadas estão corretas. Confirme também se o GPO está vinculado à UO certa e se a permissão de compartilhamento da impressora de destino está ativada.

Problema nº 2: falhas na instalação do driver

O mapeamento pode falhar se o driver da impressora estiver bloqueado por política ou se o driver errado estiver instalado. Para evitar isso, pré-instale os drivers no endpoint de destino, manualmente ou com o cmdlet Add-PrinterDriver.

Também dá para abrir o gpmc.msc e criar ou editar um GPO vinculado à UO de destino. Vá até Configuração do Computador > Políticas > Modelos Administrativos > Impressoras, clique com o botão direito e edite Restrições de Apontar e Imprimir, informando os nomes dos servidores de impressão desejados.

Problema nº 3: o script não é executado

Abra o gpmc.msc, crie ou edite um GPO e vá até Configuração do Computador > Componentes do Windows > Windows PowerShell. Configure a política Ativar Execução de Scripts selecionando Permitir scripts locais e remotos assinados.

Os técnicos também podem incluir um log simples nos scripts, como Out-File C:\Temp\MapPrinters.log -Append, para evitar falhas silenciosas.

Problema nº 4: chaves do Registro ausentes

Confirme se está usando o hive correto do Registro. Para impressoras por usuário, execute o script no contexto do usuário, consultando o hive HKCU. Já os mapeamentos para todo o sistema devem usar o HKLM.

O que considerar ao gerenciar impressoras locais em endpoints

O mapeamento de impressoras locais organiza a distribuição dos trabalhos de impressão entre as impressoras do ambiente. Já é uma ferramenta forte por si só, mas vale observar alguns pontos para tirar o máximo proveito dela.

Evitar impressoras duplicadas

Várias execuções do mesmo script podem criar impressoras duplicadas sem querer, o que gera retrabalho. Acrescente Get-Printer -Name "PrinterName" ao script para que ele verifique se a impressora já existe e evite duplicatas.

Alternativa para impressoras offline

Impressoras inacessíveis deixam o logon lento e fazem o mapeamento falhar. Para pular impressoras ou servidores que não respondem, adicione Test-Connection -Quiet -Count 3 "PrinterName" ao script do PowerShell.

Permissões de impressora

Mesmo com um bom mapeamento local, os usuários não conseguem imprimir sem as permissões de compartilhamento corretas. Abra o printmanagement.msc, vá até Propriedades da Impressora > Segurança da impressora desejada e confirme que os grupos certos têm direito de impressão.

Serviços NinjaOne para automatizar o gerenciamento de impressoras locais

NinjaOne oferece serviços automatizados que ajudam MSPs e equipes internas de TI a implantar atribuições dinâmicas de impressoras em escala.

Serviço NinjaOneDefiniçãoComo ajuda no mapeamento de impressoras locais
PowerShell remotoPermite que os técnicos executem scripts remotamente em tempo real.Automatize a implantação dos scripts de mapeamento de impressoras locais de forma consistente e centralizada em todo o ambiente.
Campos personalizadosOs técnicos podem usar campos personalizados para armazenar informações no endpoint, com uma visão mais detalhada do dispositivo em um só olhar.Use campos personalizados para marcar, organizar e direcionar dispositivos específicos, deixando a implantação de scripts mais precisa e eficiente.
Monitoramento em tempo real e alertas automatizadosPermite monitorar endpoints de forma proativa e criar alertas personalizados para reduzir o MTTR.Monitore o mapeamento de impressoras locais continuamente e use alertas personalizados para disparar scripts de correção automaticamente, diminuindo a execução manual.
Automação baseada em políticasPadroniza as configurações do sistema nos endpoints e automatiza patches para conformidade e manutenção.Use este serviço para disparar ações automaticamente quando a política de mapeamento de impressoras desviar, antes que a conformidade seja comprometida.

Automatize o mapeamento de impressoras locais e simplifique gerenciamento e suporte

Scripts do PowerShell e do CMD automatizam a implantação de impressoras locais. E configurar a execução automática no logon garante consistência para todos os usuários do ambiente.

Para implantações centralizadas, use GPOs para configurar mapeamentos de impressoras compartilhadas combinados com marcas no Registro para o direcionamento no nível do item. Outra opção é adotar uma plataforma unificada de operações de TI, como NinjaOne, para ganhar visibilidade dos endpoints e automação granular das políticas de impressão.

Tópicos relacionados:

Guia de início rápido

NinjaOne tem recursos para automatizar o mapeamento de impressoras locais. Em detalhes:

  1. Existe um script nativo chamado “Add Network Printer” que permite:
    • adicionar ou remover uma impressora de rede compartilhada
    • configurar a impressora como conexão por computador
    • aplicar o mapeamento a todos os perfis de usuário
  2. O script pode ser usado na Biblioteca de Automação do NinjaOne, o que permite:
    • implantá-lo em vários dispositivos
    • agendar o mapeamento da impressora
    • aplicá-lo por meio de políticas

Detalhes importantes:

  • o script foi criado para adicionar impressoras de rede compartilhadas
  • funciona em todos os perfis de usuário do computador
  • pode ser implantado e automatizado facilmente pela plataforma NinjaOne

FAQs

Para impressoras mapeadas pelo PowerShell, use Remove-Printer -Name “PrinterName” para desfazer o mapeamento de um dispositivo específico.

No caso de impressoras implantadas por GPO, edite a entrada de GPP vinculada e mude a Ação de “Atualizar” para “Excluir”. Depois, execute gpupdate /force nos dispositivos de destino para aplicar a remoção. Impressoras mapeadas com marcas no Registro também precisam ter a chave correspondente apagada, para que a lógica de acompanhamento não reporte um status “mapeado” desatualizado.

Use o método de marcação no Registro descrito neste guia. Ele permite que os técnicos consultem dispositivos em lote e sinalizem entradas ausentes ou desatualizadas. Os melhores softwares de RMM ampliam esse recurso com campos personalizados e relatórios centralizados. Assim, as equipes de TI obtêm uma visão de conformidade do mapeamento em todo o inventário, em vez de verificar máquina por máquina com Get-Printer.

Mapear uma impressora só cria a conexão; não concede direito de impressão. A conta ou o grupo do usuário também precisa ter permissão de Impressão no objeto da impressora compartilhada. Para configurar, acesse Propriedades da Impressora > Segurança no Gerenciamento de Impressão. Sem essa camada de permissão, uma impressora corretamente mapeada ainda vai falhar ou exibir um erro de acesso negado quando o usuário tentar imprimir.

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?