none
Dúvida: Mapeamento de Pastas para usuário via GPO RRS feed

  • Pergunta

  • Boa Tarde a Todos,

    Já li vários tutoriais na internet e alguns aqui no Technet e ainda não consegui a melhor prática para resolver minha dúvida, antes quero deixar claro que já tenho os script's para mapeamento de pastas ok? Meu problema não é criar mapeamento de pastas.

    Vamos lá:

    No meu ambiente tenho vários departamentos (vendas,comercial,TI), esses departamentos me solicitam a criação de novas pastas exemplo: depto vendas solicitou a criação da pasta Relatório então lá no meu FS eu crio a pasta Vendas(pra identificar o depto)/Relatorio (pasta solicitada para ser criada) ok?

    O problema é que estou criando um login de script para que os usuarios do grupo GSPastaRelatorio seja mapeada a unidade X:\ na área de trabalho do usuário para ele obter acesso a pasta Relatorio.

    Ora imagina para cada pasta mapeada eu ter uma letra de unidade de rede mapeada? Está errado concordam? E quando eu tiver 50 pastas na rede, como irei fazer? O Alfabeto não tem 50 letras rs.

    Então colegas eu pergunto: qual a melhor prática para mapear uma pasta para usuário sem necessariamente vincular a uma unidade de rede mapeada? OU pode até ser unidade de rede mapeada mas desde que eu necessariamente não precise para cada pasta mapeada uma letra do alfabeto.

    Me desculpem se ficou confuso, eu tento melhorar o que foi descrito...Obrigado a todos.

    segunda-feira, 30 de julho de 2012 17:38

Respostas

  • Boa noite Mineirin,

    Tenta este script:

    Set objNetwork= CreateObject("WScript.Network")
    Set oFSO = Wscript.CreateObject("Scripting.FileSystemObject")
    strDom = objNetwork.UserDomain
    strUser = objNetwork.UserName
    Set objUser = GetObject("WinNT://" & strDom & "/" & strUser &  ",user")
    i=0
    For Each objGroup In objUser.Groups
    	Select Case objGroup.Name
    
    		Case "GSPastaGeral"
    		strDsk = WshShell.SpecialFolders("Desktop")
    		strshortcut = strDsk & "\Geral.lnk"
    			If Not oFSO.FileExists(strshortcut) Then
    			 Set oUrlLink = WshShell.CreateShortcut(strshortcut)
    		oUrlLink.TargetPath = "\\teste01.com.br\geral"
    		oUrlLink.Save
            Case "GPvendas"
                   wscritp.echo "Criar atalho de VENDAS"
            Case "GPTI"
    		wscritp.echo "Criar atalho de TI"
        End Select
    Next

    • Marcado como Resposta Curious_007 terça-feira, 31 de julho de 2012 13:22
    terça-feira, 31 de julho de 2012 02:24

Todas as Respostas

  • Pessoal,

    Resolvi a dúvida acima de uma maneira simples, não preciso criar uma mapeamento de rede (u:\ por exemplo), basta eu criar um script de compartilhamento ao invés de mapeamento.

    Agora eu tenho outra dúvida...já pesquisei alguns link's aqui no fórum que não me atenderam, é o seguinte:

    Tenho o script abaixo:

    SET oFSO = Wscript.CreateObject("Scripting.FileSystemObject")
        strDsk = WshShell.SpecialFolders("Desktop")
          ' What is the label for the shortcut?
       strshortcut = strDsk & "\Geral.lnk"
    If Not oFSO.FileExists(strshortcut) Then
           SET oUrlLink = WshShell.CreateShortcut(strshortcut)
             ' What is the path to the shared folder?
           oUrlLink.TargetPath = "\\teste01.com.br\geral"
           oUrlLink.Save

    Como usar o script acima fazendo uma condição? Por exemplo como usar o script acima somente para o grupo GSPastaGeral possuir o link de atalho da pasta Geral?

    Poxa estou quebrando cabeça tentei fazer um case ou seja:

    Case "GSPastaGeral"

    SET oFSO = Wscript.CreateObject("Scripting.FileSystemObject")
        strDsk = WshShell.SpecialFolders("Desktop")
          ' What is the label for the shortcut?
       strshortcut = strDsk & "\Geral.lnk"
    If Not oFSO.FileExists(strshortcut) Then
           SET oUrlLink = WshShell.CreateShortcut(strshortcut)
             ' What is the path to the shared folder?
           oUrlLink.TargetPath = "\\teste01.com.br\geral"
           oUrlLink.Save

    Mas não deu certo, alguma luz?

    segunda-feira, 30 de julho de 2012 20:41
  • Boa noite Mineirin,

    Tenta este script:

    Set objNetwork= CreateObject("WScript.Network")
    Set oFSO = Wscript.CreateObject("Scripting.FileSystemObject")
    strDom = objNetwork.UserDomain
    strUser = objNetwork.UserName
    Set objUser = GetObject("WinNT://" & strDom & "/" & strUser &  ",user")
    i=0
    For Each objGroup In objUser.Groups
    	Select Case objGroup.Name
    
    		Case "GSPastaGeral"
    		strDsk = WshShell.SpecialFolders("Desktop")
    		strshortcut = strDsk & "\Geral.lnk"
    			If Not oFSO.FileExists(strshortcut) Then
    			 Set oUrlLink = WshShell.CreateShortcut(strshortcut)
    		oUrlLink.TargetPath = "\\teste01.com.br\geral"
    		oUrlLink.Save
            Case "GPvendas"
                   wscritp.echo "Criar atalho de VENDAS"
            Case "GPTI"
    		wscritp.echo "Criar atalho de TI"
        End Select
    Next

    • Marcado como Resposta Curious_007 terça-feira, 31 de julho de 2012 13:22
    terça-feira, 31 de julho de 2012 02:24
  • Meu caro era isso mesmo que eu precisava, rodou perfeito aqui...Muito Obrigado.
    terça-feira, 31 de julho de 2012 13:22