Usuário com melhor resposta
Como fazer que uma determinada impressora fique padrao com um determinado usuário com script.vbs

Pergunta
-
Boa tarde,
Bem meu senário é o seguinte.
Tenho em torno de 500 máquinas onde gerencio atualmente. Antes trabalhava com script.bat para criar pastas, mapeamentos e instalação de impressoras. Em alguns estudos e testes vi que para meu senário atual o script.vbs estava muito mais ágil, mais rápido no mapeamento e mais rápido para instalar as impressoras, foi onde optei usar o .vbs. Tudo Legal. hh. Mas sempre tem um crefe que quer ser diferente.
O problema é o seguinte existe algum diretores aqui que esta pedindo que uma das impressoras que tem em sua sala seja a padrão, ou seja, existe três impressora ex abaixo.
diretoria
secretaria
crefia
E o padrão dos diretores esta como secretaria mas eles querem que a impressora padrão seja a DIRETORIA.
Gostaria de saber se alguém pode me ajudar, como faço para deixar a impressora DIRETORIA como padrão.
Agradeço desde já
William Silva
- Movido Richard Juhasz segunda-feira, 6 de agosto de 2012 17:19 thread movida (De:Windows Server 2008)
Respostas
-
William,
Veja um exemplo que verifica o usuário e seta a impressora padrão.
Set WshNetwork = WScript.CreateObject("WScript.Network") IF WshNetwork.UserName = "FABIOJR" then WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" end if
Fábio de Paula Junior
- Sugerido como Resposta Fábio JrModerator quarta-feira, 8 de agosto de 2012 22:26
- Marcado como Resposta Fábio JrModerator domingo, 12 de agosto de 2012 16:32
-
boa noite William,
com base nesse exemplo do Fabio, você pode usar um case que verifica o Grupo e defini a impressora...
ex:
Set WshNetwork= WScript.CreateObject("WScript.Network") strDom = WshNetwork.UserDomain strUser = WshNetwork.UserName Set objUser = GetObject("WinNT://" & strDom & "/" & strUser & ",user") i=0 For Each objGroup In objUser.Groups Select Case objGroup.Name Case "Diretoria" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" Case "Secretaria" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" Case "crefia" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" End Select Next
- Marcado como Resposta Fábio JrModerator domingo, 12 de agosto de 2012 16:32
Todas as Respostas
-
Boa tarde,
Bem meu senário é o seguinte.
Tenho em torno de 500 máquinas onde gerencio atualmente. Antes trabalhava com script.bat para criar pastas, mapeamentos e instalação de impressoras. Em alguns estudos e testes vi que para meu senário atual o script.vbs estava muito mais ágil, mais rápido no mapeamento e mais rápido para instalar as impressoras, foi onde optei usar o .vbs. Tudo Legal. hh. Mas sempre tem um crefe que quer ser diferente.
O problema é o seguinte existe algum diretores aqui que esta pedindo que uma das impressoras que tem em sua sala seja a padrão, ou seja, existe três impressora ex abaixo.
diretoria
secretaria
crefia
E o padrão dos diretores esta como secretaria mas eles querem que a impressora padrão seja a DIRETORIA.
Gostaria de saber se alguém pode me ajudar, como faço para deixar a impressora DIRETORIA como padrão.
Obs: Atualmente eu trabalho com permissões por grupo, ou seja se o usuário for de grupo tal ele consegue mapear caso contrario ele não terá permissão. To pensando em fazer da mesma forma pra deixar a impressora padrão, criar um grupo de impressoras padrão.
Agradeço desde já
William Silva
William Silva
-
William,
Veja um exemplo que verifica o usuário e seta a impressora padrão.
Set WshNetwork = WScript.CreateObject("WScript.Network") IF WshNetwork.UserName = "FABIOJR" then WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" end if
Fábio de Paula Junior
- Sugerido como Resposta Fábio JrModerator quarta-feira, 8 de agosto de 2012 22:26
- Marcado como Resposta Fábio JrModerator domingo, 12 de agosto de 2012 16:32
-
Bom dia F. Junior
Pelo que vejo terei que criar um novo script para setar a impressora padrão para quem for do grupo correspondente.
Como já temos um script padrão, ao finalizar o script padão darei um CALL no novo script para que após a instalação das impressoras que cada grupo tem acesso
o novo script inicia a verificacao e sai setando a impressora padrão.
Pelo que vi será o mais corretor para meu problema, dose que dará um pouco de trabalho pra criar esse script.
William Silva
-
boa noite William,
com base nesse exemplo do Fabio, você pode usar um case que verifica o Grupo e defini a impressora...
ex:
Set WshNetwork= WScript.CreateObject("WScript.Network") strDom = WshNetwork.UserDomain strUser = WshNetwork.UserName Set objUser = GetObject("WinNT://" & strDom & "/" & strUser & ",user") i=0 For Each objGroup In objUser.Groups Select Case objGroup.Name Case "Diretoria" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" Case "Secretaria" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" Case "crefia" WshNetwork.SetDefaultPrinter "\\ServerName\PrinterName" End Select Next
- Marcado como Resposta Fábio JrModerator domingo, 12 de agosto de 2012 16:32
-
Bom dia Galera,
Na realidade terei que fazer um novo script como já havia dito, com base nesse exemplo do Fabio, farei com que o script verifique o Grupo e defini a impressora padrão. Como estou enrolado não tive tempo de fazer os testes, mas desde já agradeço.
William Silva