none
GPO para criar atalho nas estações não funciona RRS feed

  • Pergunta

  • Fala pessoal blz?

    Então tenho o windows 2003 server como AD da rede, gostaria de saber, qual a melhor forma de fazer de forma automátrico com que um atalho apareça nas estações da rede, pois eu tentei configurar e não consegui, como já tenho a GPO para o papel de parede funcionando então eu fiz da seguinte forma:

    Coloquei o atalho na mesmo diretorio onde esta o papel de parede.

    Na GPO do desktop eu coloquei o mesmo endereço da GPO do papel de pared eso mudei o nome do arquivo.

    Aproveitando gostaria de saber também como agregar o arquivo.ico.

    OBS: Tentei via .bat sem sucesso ocorreu um erro de UNS.

    Grato.

    quinta-feira, 29 de novembro de 2012 11:09

Respostas

  • Thiago,

    Tente o seguinte:

    1)Crie o atalho manualmente e copie ele para um local acessivel (leitura) aos usuários, exempli: \\seudomaincontroller\netlogon

    2)Crie um script de logon que copie este arquivo criado para o desktop do usuário, assim:

    copy \\seudc\netlogon\atalho.lnk "%USERPROFILE%\Desktop" /Y



    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 11:21
  • Então, ao que parece vc está copiando o arquivo com extensão errada.

    é muito simples, é um copy, mas tem que passar o nome correto do arquivo, por isso estou pedindo o DIR pra ver o nome do arquivo.


    Fábio de Paula Junior

    • Marcado como Resposta Thiago S. Amaral quinta-feira, 29 de novembro de 2012 19:34
    quinta-feira, 29 de novembro de 2012 19:20

Todas as Respostas

  • Thiago,

    Tente o seguinte:

    1)Crie o atalho manualmente e copie ele para um local acessivel (leitura) aos usuários, exempli: \\seudomaincontroller\netlogon

    2)Crie um script de logon que copie este arquivo criado para o desktop do usuário, assim:

    copy \\seudc\netlogon\atalho.lnk "%USERPROFILE%\Desktop" /Y



    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 11:21
  • Opa Fábio então não deu certo na hora que executo o arquivo bat eu aperto pause para verificar a mensagem que ele da aparece a seguinte msg:

    CMD.EXE was started with teh above path as the current directory.

    UNC paths are note supported. Defaulting to Windows directory.

    The sustem cannot find the file specified.

    OBS: Estou utilizando windows 7, na rede existe Win/XP/Vista/7

    Grato.

    quinta-feira, 29 de novembro de 2012 11:52
  • Se o .bat que vc está executando está em um local de rede esta mensagem é normal, pois ele tenta colocar o prompt no local onde está script e como é na rede não rola, mas ele coloca no system32.

    O comando deveria funcionar, abra um prompt de comando e digite a linha de comando como no .BAT e verifique se vc colocou corretamente os caminhos de origem e destino.


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 14:26
  • se vc postar o seu comando fica mais fácil para identificar o erro.

    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 15:39
  • opa então segue o comando que esta la na Bat:

    @ECHO OFF

    copy \\192.168.1.10\netlogon\Sistema_de_chamados_FBD.lnk "%USERPROFILE%\Desktop" /Y

    quinta-feira, 29 de novembro de 2012 15:42
  • Thiago,

    se vc digitar o comando em um prompt de comando o que acontece? manda um print

    copy \\192.168.1.10\netlogon\Sistema_de_chamados_FBD.lnk "%USERPROFILE%\Desktop" /Y

    Outra, a variavel %userprofile% geralmente aponta para C:\users\nome_do_usuario_logado, então significa que o comando que indiquei vai copiar para c:\user\<usuariologado>\desktop.

    Olha o resultado do que rodei aqui:

    C:\Users\fabiojunior>copy "e:\Temp\test.lnk" %userprofile%\desktop
            1 arquivo(s) copiado(s).
    

    O /Y é utilizado no final para substituir o arquivo caso ele exista.


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 15:49
  • nesse caso você fez local certo? eu estou tentando fazer a partir do net logon confere ai..




    quinta-feira, 29 de novembro de 2012 15:56
  • Fiz um teste pegando no netlogon, tudo certo também, mande uma tela com os comando igual eu fiz abaixo:

    Veja, primeiro eu fiz um dir no netlogon pra ver que o .lnk está lá, depois eu copiei.


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 16:10
  • Veja que o meu arquivo esta dentro de uma pasta, coloquei para não misturar com vários outros que estão no meu netlogon, mas pra vc tanto faz.

    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 16:10
  • Mais um teste, tendo como pasta base o C:\windows\system32


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 16:12
  • Cara esta estranho ele não esta reconhecendo o arquivo de atalho, olha só:

    quinta-feira, 29 de novembro de 2012 18:14
  • Cadê o dir do netlogon?

    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 18:25
  • E o arquivo que vc está tentando copiar é .URL ou .LNK?

    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 18:27
  • Então vc viu que copiou sme colocar o link é um shortcut de um link de internet.
    quinta-feira, 29 de novembro de 2012 19:08
  • Então, ao que parece vc está copiando o arquivo com extensão errada.

    é muito simples, é um copy, mas tem que passar o nome correto do arquivo, por isso estou pedindo o DIR pra ver o nome do arquivo.


    Fábio de Paula Junior

    • Marcado como Resposta Thiago S. Amaral quinta-feira, 29 de novembro de 2012 19:34
    quinta-feira, 29 de novembro de 2012 19:20
  • Entendi então é URL o tipo do arquivo é um atalho para uma URL, como que eu faço pq eu alterei la a extensão do arquivo e continuar não funcionando.
    quinta-feira, 29 de novembro de 2012 19:30
  • Então eu tirei o arquivo e mandei ele copiar tudo que tinha na pasta ele copiou o problema agora o arquivo.ico como eu agrego esse arquivo??
    quinta-feira, 29 de novembro de 2012 19:31
  • O comando é o mesmo que te passei desde o inicio:

    copy \\seudc\netlogon\atalho.lnk "%USERPROFILE%\Desktop" /Y

    Ele é apenas um exemplo, eu coloquei lnk porque vc disse que era um atalho, mas quando o atalho é do IE então ele colocar .url.

    mande pra mim um print igual ao que fiz uma vez: primeiro o DIR e depois a copia, assim eu consigo ajudar. Se vc ficar renomeando arquivo isso vai longe....


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 19:34
  • 1 - No local de origem (netlogon) o atalho está com o icone certo? Se não tiver vc já tem que colocar ele lá com o icone certo.

    2 - Este icone já tem no Windows ou é um icone que vc criou? se foi vc que criou vc tem que copiar o arquivo do icone pra dentro das maquinas também.


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 19:38
  • Fábio você pode ver que eu fiz o comando dir, depois fiz o comando para copiar e não funcionou.

    quinta-feira, 29 de novembro de 2012 19:43
  • 1 - No local de origem (netlogon) o atalho está com o icone certo? Se não tiver vc já tem que colocar ele lá com o icone certo.

    2 - Este icone já tem no Windows ou é um icone que vc criou? se foi vc que criou vc tem que copiar o arquivo do icone pra dentro das maquinas também.


    Fábio de Paula Junior

    Este ícone eu criei...um entendi.. ai nesse caso tenho de ver  o diretorio padrão de icones do sistema para copiar o .ico.

    quinta-feira, 29 de novembro de 2012 19:48
  • Tente assim:

    copy "\\192.168.1.10\netlogon\GLPI\Sistema de Chamados FBD.url" "%USERPROFILE%\Desktop"

    Quando tem espaço no nome do diretório\pasta então vc tem que colocar entre aspas. 


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 19:49
  • Pronto deu certo pow agora complico, terei de modificar o shell.dll para incluir o icone e depois replicar para todas as maquinas da rede sendo que tneho win 7/xp/vista... ixi e agora? pode me dar alguma dica para resolver esse problema do .ico?
    quinta-feira, 29 de novembro de 2012 19:54
  • Como eu acho que vc criou o seu atalho, me corrija se eu estiver errado:

    1) Criou o icone

    2) Entrou nas propriedades do icone e foi em "alterar icone"

    Pergunta: Qual o caminho do icone que vc selecionou?


    Fábio de Paula Junior

    quinta-feira, 29 de novembro de 2012 19:58
  • Opa isso mesmo o caminho é local esta no netlogon o arquivo.ico
    quinta-feira, 29 de novembro de 2012 23:56
  • Fábio deu tudo certo agora só naõ estou conseguindo fazer com que o arquivo. ico carregue junto com o atalho.

    Grato.

    quarta-feira, 5 de dezembro de 2012 17:08
  • Qual o caminho do icone que vc selecionou?

    Fábio de Paula Junior

    quinta-feira, 6 de dezembro de 2012 01:16

  • Opa então é o mesmo local do link LFSSP_01\netlogon\GLPI\iconeglpi.ico
    terça-feira, 11 de dezembro de 2012 16:41
  • Não acho legal apontar para um arquivo que está na rede, porque vc não utilizar um caminho local?

    Fábio de Paula Junior

    terça-feira, 11 de dezembro de 2012 20:40
  • então no servidor estou utilizando o caminho local mas quando o atalho aparece nas maquinas o mesmo aparece sem o icone, eu não sei como fazer o icone aparecer e todas as maquinas também.

    quarta-feira, 12 de dezembro de 2012 19:25
  • Thiago,

    Veja este código, ele cria o atalho.

    Set objShell = WScript.CreateObject("WScript.Shell")
    
    Set lnk = objShell.CreateShortcut("C:\MyShortcut.LNK")
    
    lnk.TargetPath = "C:\Program Files\MyApp\MyProgram.EXE"
    lnk.Arguments = ""
    lnk.Description = "MyProgram"
    lnk.HotKey = "ALT+CTRL+F"
    lnk.IconLocation = "C:\Program Files\MyApp\MyProgram.EXE, 2"
    lnk.WindowStyle = "1"
    lnk.WorkingDirectory = "C:\Program Files\MyApp"
    lnk.Save

    Na propriedade IconLocation vc informa o caminho do icone.

    Antes de criar o icone sugiro que vc copie o icone para a estação, se vc consegue copiar o atalho não vejo dificuldade para vc copiar o icone.


    Fábio de Paula Junior

    quinta-feira, 13 de dezembro de 2012 11:13
  • E antes de perguntar como copiar um arquivo usando VBScript (que é a linguagem usada no código de criação do atalho), faça uma procura, se não funcionar, poste o código que vc tentou usar.

    Fábio de Paula Junior

    quinta-feira, 13 de dezembro de 2012 11:15
  • Bom dia Fábio, então estou com problema com o script vbs, resolvi aproveitar e ja alterar todo o script estou testando na minha maquina que possui windows 7, segue pint do erro, e em baixo o codigo vbs.

    CODIGO

    'Script de Login


    On error Resume Next
    Err.clear 0

    '============================================================================
    Copia o arquivo .ICO do atalho para USERPROFILE

    Const OverwriteExisting = TRUE

    Set objFSO = CreateObject("Scripting.FileSystemObject")
    objFSO.CopyFile "192.168.1.10\netlogon\GLPI\iconeGLPI.ico" , "C:\%USERPROFILE%", OverwriteExisting
    Wscript.quit

    '============================================================================
    'Criação de Atalho Sistema de chamados FBD

    set WshShell = WScript.CreateObject("WScript.Shell")
    strDesktop = WshShell.SpecialFolders("Desktop")

    set oUrlLink = WshShell.CreateShortcut(strDesktop & "\Sistema de Chamados FBD.lnk")

    oUrlLink.TargetPath = "http://fbd.com.br/suporte/index.php"

    oUrlLink.IconLocation = "C:\%USERPROFILE%\iconeGLPI.ico"

    oUrlLink.Save

    '============================================================================
    'Mapeando Unidades de Disco

    Set WshNetwork = Wscript.CreateObject("Wscript.Network")
    WshNetwork.MapNetworkDrive "T:","\\192.168.1.10\Tecnologia","true"
    WshNetwork.MapNetworkDrive "Z:","\\192.168.1.10\Publico_Tecnologia","true"
    WshNetwork.MapNetworkDrive "P:","\\192.168.1.10\Publico_Geral","true"

    '============================================================================
    'Sincroniza o horario da estacao com o servidor

    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
    Set objShell = CreateObject("WScript.shell")
    strCmd = "net time \\192.168.1.10 /set /yes"
    set objexec = objshell.exec(strcmd)

    '============================================================================
    'Boas Vindas Ao Usuario

    Set objUser = WScript.CreateObject("WScript.Network")
    wuser=objUser.UserName
    If Time <= "12:00:00" Then
    MsgBox ("Bom Dia "+Wuser+", você acaba de ingressar na rede corporativa da FBD, por favor respeite as políticas de segurança e bom trabalho!")
    ElseIf Time >= "12:00:01" And Time <= "18:00:00" Then
    MsgBox ("Boa Tarde "+Wuser+", você acaba de ingressar na rede corporativa da FBD, por favor respeite as políticas de segurança e bom trabalho!")
    Else
    MsgBox ("Boa Noite "+wuser+", você acaba de ingressar na rede corporativa da FBD, por favor respeite as políticas de segurança e bom trabalho!")
    End If

    Wscript.Quit

    sexta-feira, 14 de dezembro de 2012 13:12
  • Algumas dicas:

    1. Quando se está testando o script não é bom deixar a linha On error resume next ativada, pois com ela ativada vc pode passar batido por alguns erros.

    2. Logo no inicio do seu script tem a linha "Wscript.quit", seu script está encerrando ali.

    3. Tá bem errada essa linha "objFSO.CopyFile "192.168.1.10\netlogon\GLPI\iconeGLPI.ico" , "C:\%USERPROFILE%", OverwriteExisting", primeiro porque a pasta de origem começa por um IP, deveria começar então por "\\" , segundo, em VBSCript não funciona colocar %USERPROFILE% na string, ela não se resolve.

    4.Provavel erro que vc indicou,

    A linha "Copia o arquivo .ICO do atalho para USERPROFILE", não está comentada, era pra ser um comentário e não tem apóstrofo (') no inicio

    Voce esta tentando fazer 5 coisas diferente no mesmo script, isto não tem problema, mas parece que vc é iniciante, então faça primeiro o script que copia, funcionou? escreva mais uma parte, funcionou? parte para a próxima.


    Fábio de Paula Junior

    sexta-feira, 14 de dezembro de 2012 20:26
  • um entendi isso mesmo sou iniciante sim em VBS, irei testar auqi e vo te falando vamos ver... obrigado por enquanto...
    segunda-feira, 17 de dezembro de 2012 19:20