none
Script com Vista RRS feed

  • Pergunta

  • Olá,

    Tenho uma rede com Windows 2003 Server e um domínio e algumas estações XP Pro. O Script de login abaixo é usado para mapeamento e funciona perfeitamente nas estações XP. Esse script fica no Server.

    Adicionei uma estação Windows Vista Business e o script não funciona ao efetuar o login. Se rodar o script localmente aí ele funciona.

    obs. Todos os software estão em português - Brasil.

    Alguma dica. Esse fórum é o melhor local para essa questão?

    Carlos César Tanaka


    On error resume next
    Set wshNetwork = CreateObject("WScript.Network")
    wshNetwork.MapNetworkDrive "i:", "\\micro5\i"
    wshNetwork.MapNetworkDrive "m:", "\\micro5\d"

    Set ADSysInfo = CreateObject("ADSystemInfo")
    Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
    colGroups = CurrentUser.memberOf
    If IsEmpty(colGroups) Then
      strGroups = ""
    ElseIf TypeName(colGroups) = "String" Then
      strGroups = LCase(colGroups)
    Else
      strGroups = LCase(Join(colGroups))
    End If

    If InStr(strGroups, GRP_DIRECAO) Then

        wshNetwork.MapNetworkDrive "h:", "\\micro5\h"
        wshNetwork.MapNetworkDrive "k:", "\\micro5\k"
        wshNetwork.MapNetworkDrive "l:", "\\micro5\l"
        wshNetwork.MapNetworkDrive "j:", "\\micro5\j"


    ElseIf InStr(strGroups, GRP_MONITORES) Then

        wshNetwork.MapNetworkDrive "h:", "\\micro5\h"
        wshNetwork.MapNetworkDrive "k:", "\\micro5\k"
        wshNetwork.MapNetworkDrive "l:", "\\micro5\l"

    ElseIf InStr(strGroups, GRP_ALUNOS) Then

        wshNetwork.MapNetworkDrive "h:", "\\micro5\h"
        wshNetwork.MapNetworkDrive "k:", "\\micro5\k"

    End if

    If InStr(Ucase(WshNetwork.ComputerName), "MICRO4") = 0 then
     WshNetwork.AddWindowsPrinterCOnnection "\\micro4\c85"
     WshNetwork.SetDefaultPrinter "\\micro4\c85"
    end if

    quinta-feira, 15 de março de 2007 16:57

Respostas

  • Então vamos lá:

    1) O caminho tá correto. Eu mesmo prefiro usar esse tipo (caminhos UNC completos) do que caminhos relativos e colocar todos os scripts na pasta Scripts que fica dentro do Windows. Fica mais fácil de gerenciar. Em todo caso, só pra fazer um teste, copie os scripts pra pasta %SystemRoot%\Sysvol\Sysvol\domainname\Scripts e coloque na GPO somente o nome do arquivo .VBS pra testar.

    2) Há uma diretiva que configura como é feito o carregamento dos scripts de logon. Verifique se a opção Allow processing across a slow network connection está marcada. As instruções completas estão nesse link:

    http://www.mydigitallife.info/2006/09/13/group-policy-login-or-logon-scripts-not-running-not-working-or-not-executing/

    Teste e depois diga o que aconteceu...

    []s,

    Vinicius Canto
    MVP Scripting
    segunda-feira, 23 de abril de 2007 15:59
    Moderador
  • Olá,

    infelizmente, esse problema tá se tornando grande demais. Fazia tempo que eu não via thread sem resposta plausível por mais de 9 posts... =)

    Pelo que eu comecei a ler, o problema tá no Vista. Tem mais gente com o mesmo problema, e com algumas soluções temporárias:
    http://www.developersdex.com/asp/message.asp?p=593&r=5431945&page=2

    Eu optaria por desativar o UAC e tomar o cuidado de não deixar nenhum usuário com poderes de admin local. O problema tá nas permissões do Script...

    Para testar, faça isso:

    1) Teste o seu script normalmente, como você tinha configurado inicialmente. A única mudança é colocar essa linha na primeira linha do teu script

    msgbox "Teste"

    Se aparecer a mensagem, sabemos que o script tá sendo executado, mas é o Vista que tá barrando o resto dos comandos dele (o que se enquadra no link que eu passei)

    2) Teste depois desativar o UAC e logar normalmente com um usuário comum.


    Vou pegar meu cd do vista e instalar ele numa VM aqui em casa pra testar também...


    []s,

    --
    Vinicius Canto <scripterbr_at_gmail_dot_com>
    MVP Visual Developer - Scripting
    MCP Windows 2000 Server, Windows XP e SQL Server 2000
    Blog sobre Scripting: http://viniciuscanto.blogspot.com

    sábado, 28 de abril de 2007 15:53
    Moderador
  • Verifiquei o thread de discussão no link você indicou e aquela é realmente a situação que estou enfrentando.

    Realmente é inexplicável como um bug desse tipo passou pelo lançamento do Windows Vista.

    De fato usuário que não pertencem ao grupo administrativo fazem logon e o script funciona corretamente. Somente os administradores têm esse problema.

    Vou aguardar por uma correção no Windows Vista, por enquanto essa questão fica em aberto.

    Agradeço o esforço Vinicius.

    quarta-feira, 9 de maio de 2007 23:04

Todas as Respostas

  • Olá,

    vou responder rapidamente...

    1) É sim. É exatamente essa a finalidade desse fórum.

    2) Retire a primeira linha, o On Error Resume Next (que serve justamente pra ocultar todas as mensagens de erro, ignorando-as), execute manualmente o script após o logon e veja as mensagens que aparecem. Depois, mande aqui pra gente... fica mais fácil do que testar teu script num ambiente totalmente diferente.

    []s,


    Vinicius Canto
    quarta-feira, 21 de março de 2007 06:34
    Moderador
  • Olá Vinícius,

     

    Retirei a linha com o comando On Error Resume Next e obtive o seguinte:

    - O script de inicialização indicado pelas GPO continuam não fucnionando com Windows Vista Business. Não há mensagens de erro.

    - Nas estações com XP Professional o script funciona e não há mensagens de erro.

    - Executando o script localmente na máquina com Vista ele funciona e também não há mensagem de erro.

     

    Creio que o script está correto. Deve haver algo entre o Vista e o Windows 2003 Server.

     

    Carlos César Tanaka

    terça-feira, 27 de março de 2007 15:35
  • Olá, desculpe pela demora

    Tenho uma dúvida: o caminho que você colocou na GPO era um caminho relativo, no servidor, ou um caminho UNC?

    []s,

    --
    Vinicius Canto <scripterbr_at_gmail_dot_com>
    MVP Visual Developer - Scripting
    MCP Windows 2000 Server, Windows XP e SQL Server 2000
    Blog sobre Scripting: http://viniciuscanto.blogspot.com

    domingo, 22 de abril de 2007 16:51
    Moderador
  • Vinicius,

     

    Os caminhos utilizados são do tipo:

    \\nome_do_servidor\nome_da_pasta_compartilhada

    segunda-feira, 23 de abril de 2007 15:42
  • Então vamos lá:

    1) O caminho tá correto. Eu mesmo prefiro usar esse tipo (caminhos UNC completos) do que caminhos relativos e colocar todos os scripts na pasta Scripts que fica dentro do Windows. Fica mais fácil de gerenciar. Em todo caso, só pra fazer um teste, copie os scripts pra pasta %SystemRoot%\Sysvol\Sysvol\domainname\Scripts e coloque na GPO somente o nome do arquivo .VBS pra testar.

    2) Há uma diretiva que configura como é feito o carregamento dos scripts de logon. Verifique se a opção Allow processing across a slow network connection está marcada. As instruções completas estão nesse link:

    http://www.mydigitallife.info/2006/09/13/group-policy-login-or-logon-scripts-not-running-not-working-or-not-executing/

    Teste e depois diga o que aconteceu...

    []s,

    Vinicius Canto
    MVP Scripting
    segunda-feira, 23 de abril de 2007 15:59
    Moderador
  • Fiz os passos 1 e 2 que você recomendou, mas não surtiu efeito.

    O que não entendo é porque funciona com máquinas XP Pro e não com o Vista Business. Não parece mesmo ser um problema de script.

    terça-feira, 24 de abril de 2007 15:31
  • Realmente, não é um problema no script em si. Tente também, só por desencargo de consciência, colocar

    wscript <nome do vbs>

    na caixa script de logon ou mesmo criar um bat com uma linha que chame o VBS e coloque na GPO...

    Ainda estou pesquisando pra escobrir o que pode estar acontecendo.


    []s,

    Vinicius Canto <scripterbr_at_gmail_dot_com>
    MVP Visual Developer - Scripting
    MCP Windows 2000 Server, Windows XP e SQL Server 2000
    Blog sobre scripting: http://viniciuscanto.blogspot.com
    quinta-feira, 26 de abril de 2007 13:01
    Moderador
  • Olá Vinicius,

     

    Tentei essa última forma e não funcionou. Fui no perfil de um usuário e coloquei

    wscript c:\caminho\mapeamento.vbs

     

    Fiz o logon na máquina e não funcionou (só nessa máquina, as outras com XP funcionaram).

     

    Estou pensando em reinstalar esse Windows Vista, só estou dando um tempo porque a máquina tem todo meu ambiente de desenvolvimento.

     

    Grato.

    sábado, 28 de abril de 2007 15:19
  • Olá,

    infelizmente, esse problema tá se tornando grande demais. Fazia tempo que eu não via thread sem resposta plausível por mais de 9 posts... =)

    Pelo que eu comecei a ler, o problema tá no Vista. Tem mais gente com o mesmo problema, e com algumas soluções temporárias:
    http://www.developersdex.com/asp/message.asp?p=593&r=5431945&page=2

    Eu optaria por desativar o UAC e tomar o cuidado de não deixar nenhum usuário com poderes de admin local. O problema tá nas permissões do Script...

    Para testar, faça isso:

    1) Teste o seu script normalmente, como você tinha configurado inicialmente. A única mudança é colocar essa linha na primeira linha do teu script

    msgbox "Teste"

    Se aparecer a mensagem, sabemos que o script tá sendo executado, mas é o Vista que tá barrando o resto dos comandos dele (o que se enquadra no link que eu passei)

    2) Teste depois desativar o UAC e logar normalmente com um usuário comum.


    Vou pegar meu cd do vista e instalar ele numa VM aqui em casa pra testar também...


    []s,

    --
    Vinicius Canto <scripterbr_at_gmail_dot_com>
    MVP Visual Developer - Scripting
    MCP Windows 2000 Server, Windows XP e SQL Server 2000
    Blog sobre Scripting: http://viniciuscanto.blogspot.com

    sábado, 28 de abril de 2007 15:53
    Moderador
  • Desculpe pela demora Vinicius. Eu estive ausente e pretendo testar entre hoje e amanhã.
    terça-feira, 8 de maio de 2007 23:20
  • Verifiquei o thread de discussão no link você indicou e aquela é realmente a situação que estou enfrentando.

    Realmente é inexplicável como um bug desse tipo passou pelo lançamento do Windows Vista.

    De fato usuário que não pertencem ao grupo administrativo fazem logon e o script funciona corretamente. Somente os administradores têm esse problema.

    Vou aguardar por uma correção no Windows Vista, por enquanto essa questão fica em aberto.

    Agradeço o esforço Vinicius.

    quarta-feira, 9 de maio de 2007 23:04
  • Vinicius

    Ola

    Gostaria de saber se ja existe alguma solução para este problema, pois estou enfrentando o mesmo problema, sendo que quando rodo o script manualmente por um atalho ele funciona mas no script de login nao, ponho mensagem ela aparece mas nao mapeia nem pasta nem impressora, mas depois do vista totalmete carregado se eu executar o script ele finciona e roda normal

     

    Grato

    Jose Luiz

     

    domingo, 16 de setembro de 2007 21:29
  • Boa Tarde,

     

    Jose,

     

    Seguinte tenho o mesmo cenario na empresa aqui, e as unidades são mapeadas normalmente, unica coisa que reparei foi que o no windows vista, não estava resolvendo os nomes da rede (DNS) faz o teste pinga seu servidor (ping servidor) tem que responder da seguinte maneira

     

    resposta de servidor.dominio

     

     

    Acho que pode ajudar.

     

     

    Manuel

    sexta-feira, 19 de outubro de 2007 09:38