none
VBS para mapear unidade por usuários RRS feed

  • Pergunta

  • Bom dia estou tentando criar um script para mapear as unidades por usuário peguei um script em um site que faz isto por grupos, gostaria de saber como faço para tornar ele um mapeamento por usuário, se puderem me dar uma força ai agradeço muito. Segue o script abaixo:

    On Error Resume Next

    set objNetwork= CreateObject("WScript.Network")
    strDom = objNetwork.UserDomain
    strUser = objNetwork.UserName
    Set objUser = GetObject("WinNT://" & strDom & "/" & strUser & ",user")

    '============================================='

    For Each objGroup In objUser.Groups

    Select Case objGroup.Name


    Case "grupo1"
    If Not FSODrive.DriveExists("Y:") Then
    objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO"
    End If

    Case "grupo2"
    If Not FSODrive.DriveExists("Y:") Then
    objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO"
    End If

    End Select

    Next

    '============================================='

    wscript.quit

    quinta-feira, 28 de março de 2013 12:39

Respostas

Todas as Respostas

  • Vc já tem o nome do usuário na variável strUser então eu tirei o loop (que serve pra caso de grupo) e apenas modifiquei o Select Case, abaixo segue o exemplo com dois usuários( fabio, ratito).

    set objNetwork= CreateObject("WScript.Network")
    strDom = objNetwork.UserDomain
    strUser = objNetwork.UserName
    Set objUser = GetObject("WinNT://" & strDom & "/" & strUser & ",user")
    
    '============================================='
    
    Select Case strUser
    
    
    	Case "fabio" 
    		If Not FSODrive.DriveExists("Y:") Then
    			objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO" 
    		End If
    
    	Case "Ratito" 
    		If Not FSODrive.DriveExists("Y:") Then
    			objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO" 
    		End If
    
    End Select


    Fábio de Paula Junior

    quinta-feira, 28 de março de 2013 13:48
    Moderador
  • Obrigado fábio vou testar e lhe dou um retorno
    quinta-feira, 28 de março de 2013 14:02
  • Fábio ele esta funcionando ao que parece vou colocar mais usuários, na realidade eu estava tentando colocar mais de um usuário num case, tem como fazer isto para que não fique repetindo, segue um exemplo abaixo:

    Case "fabio"
    If Not FSODrive.DriveExists("Y:") Then
    objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO"
    End If

    Case "Ratito"  "fulano"
    If Not FSODrive.DriveExists("Y:") Then
    objNetwork.MapNetworkDrive "Y:", "\\IP_DO_SERVIDOR\COMPARTILHAMENTO"
    End If

    quinta-feira, 28 de março de 2013 14:57
  • Basta separar por vírgula.

    Case "Ratito","fulano"


    Fábio de Paula Junior

    • Marcado como Resposta RatitoRS quinta-feira, 28 de março de 2013 15:08
    quinta-feira, 28 de março de 2013 15:01
    Moderador
  • Funcionou beleza muito obrigado pela força. Abraço
    quinta-feira, 28 de março de 2013 15:08