none
mapeando e desconectando impressora RRS feed

  • Pergunta

  •  

    Boa tarde pessoal.

    Tenho um VBS aqui na empresa que mapeia as impressoras de acordo com o grupo a que o usuário pertence.

    Exemplo: Se o usuário fizer parte do grupo LJ123 (grupo do AD), automaticamente o vbs mapeia essa impressora para o usuário (assim que logar).

    Acontece que: se eu permitir um primeiro acesso e depois tirar, o mapeamento ainda existe, porém não imprime.

    Gostaria então de remover a impressora, porém não sei fazer um ELSE ou um SE NEGANDO.
    Exemplo de parte do vbs mapeando:

    If InStr(strGroups, COLOR_GROUP) Then
    Set wshNetwork = CreateObject("WScript.Network")
    WshNetwork.AddWindowsPrinterConnection "
    \\server\LJ123\"
    End If

    Como faço essa função inversa? ou seja, que desconecte a impressora caso o usuário não faça parte do grupo COLOR_GROUP?

    Obrigado pela força!

    terça-feira, 3 de outubro de 2006 01:36

Respostas

  • Tente o exemplo abaixo.

    If InStr(strGroups, COLOR_GROUP)=0 Then 'Não faz parte do grupo COLOR_GROUP
        Set wshNetwork = CreateObject("WScript.Network")
        WshNetwork.RemovePrinterConnection "
    \\server\LJ123\"
    End If

    terça-feira, 3 de outubro de 2006 11:46
    Moderador
  • Julio

    Acredito que da maneira que está isto já funciona. O que vc pode acrescentar é a linha on error resume next antes de tentar desmapear a impressora ao invés de testar se existe o mapeamento.

    Vai ocorrer que o script vai tentar despamear uma impressora que não está mapeada mas o script vai passar direto pelo erro.

    terça-feira, 3 de outubro de 2006 15:29
    Moderador

Todas as Respostas

  • Tente o exemplo abaixo.

    If InStr(strGroups, COLOR_GROUP)=0 Then 'Não faz parte do grupo COLOR_GROUP
        Set wshNetwork = CreateObject("WScript.Network")
        WshNetwork.RemovePrinterConnection "
    \\server\LJ123\"
    End If

    terça-feira, 3 de outubro de 2006 11:46
    Moderador
  • Valeu Fábio! Funcionou!
    Será que conseguiríamos ser mais específicos então? rs
    Tipo: Se o usuário não tiver no grupo e TIVER a impressora mapeada, o script 'desmapeia'.

    Caso o usuário NÃO SEJA do grupo e NÃO TENHA a impressora mapeada, o script não 'desmapeia'

    Desculpe a 'exploração'!! rs...
    Valew pela força!

    terça-feira, 3 de outubro de 2006 12:12
  • Julio

    Acredito que da maneira que está isto já funciona. O que vc pode acrescentar é a linha on error resume next antes de tentar desmapear a impressora ao invés de testar se existe o mapeamento.

    Vai ocorrer que o script vai tentar despamear uma impressora que não está mapeada mas o script vai passar direto pelo erro.

    terça-feira, 3 de outubro de 2006 15:29
    Moderador
  • Shooow .. Era isso mesmo que eu queria!
    mais fácil ainda!!!

    Obrigado, mais uma vez!
    terça-feira, 3 de outubro de 2006 15:34