No passado, fiz isso usando um script de inicialização.
Usando o wscript:
Set WSHNetwork = CreateObject("WScript.Network")
WSHNetwork.SetDefaultPrinter "[PRINTER_NAME]"
Extraído de este link
Configuração do Win 2003 R2. Eu posso empurrar a impressora via política de grupo e pushprinterconnections.exe, mas a impressora não está definida como a impressora padrão. Alguma idéia sobre como definir a impressora padrão para uma caixa de XP através da política de grupo?
No passado, fiz isso usando um script de inicialização.
Usando o wscript:
Set WSHNetwork = CreateObject("WScript.Network")
WSHNetwork.SetDefaultPrinter "[PRINTER_NAME]"
Extraído de este link
Em seu comentário sobre responda a você mencionando um problema com o tempo. Em nossos sistemas, chamo o script que define as impressoras padrão, adicionando o script em
Configuração do usuário - Modelos - Sistema / Logon - Executar programas no logon
Os programas em 'executar programas no logon' acontecem após o carregamento do perfil e após o início do Windows Explorer. Não tenho 100% de certeza de que isso resolverá o problema de tempo em todos os casos, mas funciona para mim.
Este é um problema surpreendentemente irritante para resolver. O primeiro problema é que a configuração padrão da impressora é específica do usuário. O segundo problema, como você observou em seu comentário para Jimmie, é que mesmo com um script de login por usuário, há problemas de tempo em que a impressora ainda não existe tecnicamente ou a seção HKCU não terminou de carregar.
O que acabamos fazendo em nossa situação é basicamente usar um script de login que faz um loop procurando a impressora para existir antes de tentar configurá-la como padrão. Se não conseguir encontrá-lo depois de um certo tempo, ele simplesmente desiste.
Temos distritos escolares usando a implantação de impressão R2 para laboratórios. Para combater essa função deixada de fora do R2, usamos o Kixtart para ajudar. Isso ajudará você a implantar impressoras para usuários em laboratórios específicos. Isso também fornecerá o atraso necessário para aguardar que as janelas adicionem a impressora.
Os laboratórios têm uma convenção de nomenclatura. HS101-01, HS101-02, HS102-01, HS102-02, etc
Usando um script de inicialização kixtart de um Objeto de Diretiva de Grupo, temos o kix32.exe para executar esse script abaixo.
;Capture room number
$pos = INSTR(@WkSta, "-");
IF $pos > 0
$Room = LEFT(@WkSta, ($pos - 1));
; ? $Room
ELSE
$Room = @WkSta;
ENDIF
SLEEP 45 ; Give the computer time to log in and add the printer
;;;;;;;;;;;;; BEGIN PRINTER DEFAULTS LIST ;;;;;;;;;;;;
SELECT
Case $Room = "HS71"
SetDefaultPrinter("\nebsdfs\HS71 - HP LaserJet 4100 Series PCL")
Case $Room = "HS086"
SetDefaultPrinter("\nebsdfs\HS086 - HP LaserJet 4000")
Case $Room = "ES102"
SetDefaultPrinter("\nebsdfs\ES102 - HP LaserJet 4000")
ENDSELECT
;;;;;;;;;;;;;; END PRINTER DEFAULTS LIST ;;;;;;;;;;;;;
Espero que isso ajude. Obrigado.