none
VSB - Mapear pasta de usuários RRS feed

  • Pergunta

  •  

    Bom dia a todos.

     

    Alguem sabe como escrevo um .vbs para mapear a pasta do usuário?

    Exemplo, tenho o user mproenca e no servidor criei em uma .bat o seguinte script

    net use u: \\server\users\%username%

     

    Gostaria de sabe como fica em VBS este script


    ----------------------------------------------------------------------------------------------------------
    Dim WshNetwork

    Set WshNetwork = WScript.CreateObject("WScript.Network")

    WshNetwork.MapNetworkDrive "U:", "\\server\users\ ? ? ? ? "


    ----------------------------------------------------------------------------------------------------------

     

    DETALHE

     

    Tenho 70 usuários, sendo assim tenho dentro da pasta USERS, 70 pastas com logins diferentes.


    Valeu a todos!
    proenca.spo@hotmail.com

    segunda-feira, 14 de janeiro de 2008 13:18

Respostas

  • Fico feliz!

    Não deixe de marcar o post como útil...

     

    Os scripts em VBS são muito mais poderosos que os em bat. Você pode fazer muito mais ações com o VBS que com o bat.

     

    Um abraço,

     

    Helio Panissa Jr

    MCP Brasil.com

    http://www.mcpbrasil.com

     

     

    segunda-feira, 14 de janeiro de 2008 15:42

Todas as Respostas

  • Olá Marco,

     

    Utilize esse script:

     

    Dim WshNetwork

    Set WshNetwork = WScript.CreateObject("WScript.Network")
    strName = WshNetwork.UserName
    WshNetwork.MapNetworkDrive "x:", "
    \\server\users\" + strName

     

    Espero que tenha ajudado!

     

    Um abraço,

     

    Helio Panissa Jr

    MCP Brasil.com

    http://www.mcpbrasil.com

     

    segunda-feira, 14 de janeiro de 2008 14:26
  •  

    Helio, valeu, consegui montar o script, aagora so falta acertar o "copia atalhos para o desktop"

     

    Hoje eu utilizo

     

    ------------------------------------------------------------------------------------------

    net time \\serverdomain  /set /y

    net use u: \\brcrdb01\users\%username%


    net use s: \\brcrdb01\Atalhos

    copy s:\*.url    c:\docume~1\%username%\desktop\

    net use s: /delete

    ------------------------------------------------------------------------------------------

     

    Hélio, vc sonsegue me explicar qual o beneficio que eu ganho em rodar os scripts tudo em vbs em vez de .bat ?

     

    Valeu pela força.

     

     

    segunda-feira, 14 de janeiro de 2008 15:21
  • Fico feliz!

    Não deixe de marcar o post como útil...

     

    Os scripts em VBS são muito mais poderosos que os em bat. Você pode fazer muito mais ações com o VBS que com o bat.

     

    Um abraço,

     

    Helio Panissa Jr

    MCP Brasil.com

    http://www.mcpbrasil.com

     

     

    segunda-feira, 14 de janeiro de 2008 15:42
  • Marco,

     

    Para copiar os atalhos, tente com esse script aqui:

     

    Const OverwriteExisting = TRUE

    Set wshShell = CreateObject( "WScript.Shell" )
    Set wshNetwork = CreateObject("WScript.Network")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    strName = WshNetwork.UserName
    wshNetwork.MapNetworkDrive "s:","
    \\brcrdb01\Atalhos"
    objFSO.CopyFile "s:\*.url" ,"c:\docume~1\"+ strName +"\desktop\", OverwriteExisting
    wshNetwork.MapNetworkDrive "s:"

    Espero que tenha ajudado!

     

    Um abraço,

     

    Helio Panissa Jr

    MCP Brasil.com

    http://www.mcpbrasil.com

    segunda-feira, 14 de janeiro de 2008 15:54
  •  

    Pessoal olha só, como ficaria o script para mapear pasta do usuario mas antes ele poderia criar a pasta com nome do user e dar permisões somente para esse user, ai ficaria show!

     

    Ambiente:

     

    0 - na pasta "pai" todos usuario tem acesso para a tarefas abaixo 

     

    1 - criar pasta do usuario caso não exista

     

    2 - dar permissões de acesso a pasta

     

    3 - mapear a pasta

    sexta-feira, 18 de janeiro de 2008 01:14

  • Bom dia a todos.

    Gostaria de ajuda, o script Copia atalho não esta funcionando.

     

    O que eu queria exatamente é:

    1-Mapear um drive de rede "L" no caso.

    2-Copiar todos os atalhos .lnk deste drive para o desktop do usuário.

    3-Apos copiar, deletar o Drive mapeado

     

    Embora, isso não tem muito sentido, porque utilizamos o GPO para adicionar no favorito os links.

    Mas as vezes quando tem link ou atalhos novos das aplicações (intranet) achamos melhor

    copiar o atalho, isso gera menos ligações para o pessoal do suporte.

     

    grande abraço a todos.
    sexta-feira, 18 de janeiro de 2008 11:46
  • Ae pessoal esse script roda blza ate a ultima linha dele, quando chega na ultima linha da um erro acredito que nao consegue desfazer o mapeamento.

     

    Const OverwriteExisting = TRUE

    Set wshShell = CreateObject( "WScript.Shell" )
    Set wshNetwork = CreateObject("WScript.Network")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    strName = WshNetwork.UserName
    wshNetwork.MapNetworkDrive "s:","
    \\brcrdb01\Atalhos"
    objFSO.CopyFile "s:\*.url" ,"c:\docume~1\"+ strName +"\desktop\", OverwriteExisting
    wshNetwork.MapNetworkDrive "s:"

    sexta-feira, 25 de janeiro de 2008 18:04
  • Biano, você quer mapear ou excluir o mapeamento de rede, porque se for remover o comando está errado, tem que ser wshnetwork.RemoveNetworkDrive "s:", se bem que eu não gosto de remover por esse comando, gera muitos erros prefiro usar o net use, assim "wshShell.run "net use S: /delete /y" Wink

    sexta-feira, 25 de janeiro de 2008 18:58
  • Valeu laerte, vou efetuar os testes.

    sexta-feira, 25 de janeiro de 2008 19:30
  •  

    olá pessoal;

     

    Não sei se com vocês acontece o mesmo que comigo quando mando remover um mapeamento qualquer pelo comando "RemoveNetworkDrive" , ao invés de remover o drive mapeado, o camando apenas desconecta a unidade continuando a mesma visível para o usuário. Isso ocorre com mais alguém? Alguma sugestão?

    sexta-feira, 22 de fevereiro de 2008 13:12
  • Walter já tentou a solução que passei pro biano que o comando net use? ela é sem falha de funcionar Wink

     

    sexta-feira, 22 de fevereiro de 2008 13:16
  • Sim, eu uso o "net use" e nunca tive problemas, porém, não entendo por que o "RemoveNetworkDrive" não funciona, ou melhor, não remove o drive mapeado.

    sexta-feira, 22 de fevereiro de 2008 16:49
  • Walter, eu já vi várias falhas quanto ao RemoveNetworkDrive, uma delas é essa que você falou outra é quando está criado um mapeamento e a opção "Reconectar ao fazer logon" estiver marcada, ele não remove nem que mãe dinah queira, foi a partir dai que nos scripts em .vbs que eu uso eu crio com o add e removo via net use usando o objeto run da classe shell, funciona que é uma beleza Big Smile

     

    sexta-feira, 22 de fevereiro de 2008 16:54
  • Ok Laerte, vou continuar a usar o velho e bom NET USE ehheh, obrigadão!

    sexta-feira, 22 de fevereiro de 2008 17:41
  • Continue, eu uso e recomendo ele Wink, qualquer coisa estamos ai e caso a resposta for útil favor marcá-la Wink

     

    sexta-feira, 22 de fevereiro de 2008 17:46