Aprenda a criar scripts em uma rede para criar atalhos
Por padrão, quem utiliza uma rede com o Windows Server 2008 ou superior a GPO permite a criação de atalhos em uma determinada área de trabalho
Autor: Eduardo Popovici
Por padrão, quem utiliza uma rede com o Windows Server 2008 ou superior pode se deliciar com a GPO que permite a criação de atalhos em uma determinada área de trabalho de um usuário. Porém, muitos de nós já temos alguns scripts de logons prontos, então muitas vezes adicionar uma pequena linha pode ser mais interessante. Abaixo, seguem algumas formas bem criativas de fazer o mapeamento automático pela rede.
Copiar_Atalho.vbs
Set objFSO = CreateObject(“Scripting.FileSystemObject”)
Set Wshs = WScript.CreateObject(“WScript.Shell”)
‘Const OverwriteExisting = true
usrProfile = Wshs.ExpandEnvironmentStrings(“%UserProfile%”)
objFSO.CopyFile “\192.168.0.1otrscustomer.pl” , usrProfile & “Desktop”, OverwriteExisting
Copiar_Atalho.bat
Em sua rede, navegue até a pasta em que o programa ou a aplicação está (lembre-se das permissões de acesso necessárias), por exemplo, \192.168.0.1otrs
Crie um atalho para este programa nessa mesma pasta. Verifique nas propriedades se o atalho aponta para o caminho correto. Em seguida, abra o bloco de notas e adeque o código abaixo:
del “%userprofile%desktopNomeDoAtalho”
copy \192.168.0.1otrsNomeDoAtalho.lnk “%userprofile%desktop”
Pronto, agora basta vincular este script de longo ao usuário ou adicionar o arquivo. Porém, particularmente gosto muito do primeiro exemplo deste post, Copiar_Atalho.vbs. É possível criar atalhos para sites web também de forma fácil e rápida com o script abaixo:
CriarAtalho.vbs
set WshShell = WScript.CreateObject(“WScript.Shell”)
strDesktop = WshShell.SpecialFolders(“Desktop”)
set oUrlLink = WshShell.CreateShortcut(strDesktop & “CHAMADOS.lnk”)
oUrlLink.TargetPath = “https://www.htbraz.com.br”
oUrlLink.IconLocation = “Caminho para o ícone .ico”
oUrlLink.Save
Leitura recomendada
Link1: Atribuição de script de logon
Link2: Criando scripts de logon
Se gostou, comente. Se funcionou, comente. Se não… comente também! Sua opinião ajuda a melhorar o blog e, logicamente, fornecer conteúdo de qualidade para quem está com problemas.
Esse conteúdo foi postado originalmente no blog da HTBRAZ Connect, em 08 de janeiro de 2014, e pode ser conferido aqui.
Boa tarde Eduardo, Eu dois ADs, e tenho um vbs para mapeamento nos dois. so que o usuário so se autentica automaticamente no AD01, e ele precisa se logar no AD02 também, com o .bar eu colocava user:padrao@ad02.dominio 123456 e dava certo, ficava transparente para o usuário.
Como eu faço isso no VBS.
Ja me ajudou muito seu post.
Obrigado.
Att:
Alex
Olá Alex, bom dia.
Olha, para desenhar um script mais eficiente eu precisaria entender seu ambiente, mas acredito que você precise de algo parecido com este script aqui. Este modelo é utilizado para o Office (Excel) para autenticação através de LDAP, mas pode ser adaptado para a sua realidade.
Lembrando que este script é apenas um modelo e você deve dapta-lo para o seu cenário.
Espero ter conseguido ajudar…. Grande abraço e muito sucesso.
*************************************************
Private Function ValidateActiveDirectoryLogin(ByVal Domain As String, ByVal Username As String, ByVal Password As String) As Boolean
Dim Success As Boolean = False
Dim Entry As New System.DirectoryServices.DirectoryEntry(“LDAP://” & Domain, Username, Password)
Dim Searcher As New System.DirectoryServices.DirectorySearcher(Entry)
Searcher.SearchScope = DirectoryServices.SearchScope.OneLevel
Try
Dim Results As System.DirectoryServices.SearchResult = Searcher.FindOne
Success = Not (Results Is Nothing)
Catch
Success = False
End Try
Return Success
End Function