none
Script deletar arquivo(s) dos usuários. RRS feed

  • Pergunta

  •  

    Boa tarde pessoal!

     

    O cenário é o seguinte:

     

    Trabalhamos com formulários no WORD utilizando claro o normal.dot, até aí tudo bem.

    O problema é que alguns aspiras aqui andaram copiando o normal.dot para a pasta C:\Arquivos de programas\Microsoft Office\OFFICE11 e funciona. Porém:

    - Existe um departamento que sempre atualiza estes formulários em uma determinada pasta da rede.

    - Tenho criado um script que copia o normal.dot alterado e coloco no PERFIL DO USUÁRIO toda vez que faz logon na rede.

    - Descobri que quando abre-se o Word ele faz uma das primeiras leituras na pasta do OFFICE11 carregando o normal.dot desta pasta e não a do usuário que esta atualizado.

    Bem Reginaldo é fácil, só apagar o normal.dot da pasta OFFICE11 de cada usuário, legal criei este script abaixo:

     

    Set WshNetwork =Wscript.CreateObject("Wscript.Network")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Const ForReading = 1, ForWriting = 2, ForAppending = 8

    varRetornoPastaPort = fso.FolderExists("C:\Arquivos de Programas\Microsoft Office\OFFICE11")
    if varRetornoPastaPort=True then
       Wscript.Echo "A pasta existe!"
       varRetornoArquivoPort=fso.FileExists("C:\Arquivos de Programas\Microsoft Office\OFFICE11\normal.dot")
           if varRetornoArquivoPort = True then
              Wscript.Echo "O arquivo existe!"
              strComputerName=WshNetwork.ComputerName
              set f=fso.OpenTextFile("\\servidor\sysvol\domínio\RelatorioNormal.txt", ForAppending, true)
              f.Writeline "" & strComputerName
              f.close
              fso.DeleteFile "C:\Arquivos de Programas\Microsoft Office\OFFICE11\normal.dot", true   
           else
              Wscript.Echo "O arquivo não existe!"
           end if  
    end if  

     

    Resumo do script: verifica se a pasta OFFICE11 existe, verifica se o arquivo normal.dot se encontra dentro dela e se sim registra o nome do computador dentro do RelatorioNormal.txt e deleta o arquivo.

    Bem, agora peço ajuda aos amigos.....testei com o usuario administrador e funcionou certinho......MAS COM DO USUÁRIO NÃO FUNCIONA!!!!! Lembro que os usuário não são administradores dos computadores.

     

    Já criei policy por usuário, computador e nada!!!!

    A mensagem que aparece é que o usuário não tem direitos para gravar dentro do .txt e nem deletar o arquivo.

    Quando rodo o script por GPO não é o SYSTEM que age como administrador local?

    quinta-feira, 27 de março de 2008 18:48

Todas as Respostas

  • Reginaldo, como você configurou a GPO nas configurações do computador? já utilizei dessa forma e funcionou belezinha

     

    quinta-feira, 27 de março de 2008 20:00
  • Olá Laerte!

     

    Tentei por computador e usuário.

    - Configurações do Windows

      - Scripts (Logon/Logoff)

         - Fazer Logon - Adicionei o script (sem parâmetros) e adicionei um usuário comum para teste a mensagem foi usuário sem permissão.

     

    quinta-feira, 27 de março de 2008 20:28
  • Reginaldo, para funcionar por computador, você tem que colocar nas configurações do computador > configurações do windows > scripts de inicialização/encerramento > inicializar e coloca o script lá

     

    Na OU que você for colocar essa diretiva o computador tem que estar nela ok? ai sim vai funcionar Wink

    quinta-feira, 27 de março de 2008 21:00
  • Laerte,

     

    Referente ao arqivo .txt que ele abre para inserir o computador que tem em seu OFFICE11 o normal.dot já resolvi, dei direito de modificar o arquivo e beleza.

     

    Testei novamente como você indicou.

    - Coloquei a policy no top, no domínio.

    - Coloquei por computador.

    - Scripts de inicialização/encerramento

    - Deleguei na guia segurança o nome do meu computador (não usuário)

    - Entrei com um usuário comum e não aceitou novamente conforme abaixo:

     

    script: \\domínio\...\...

    Linha: 15 (linha onde deleta o arquivo no script.)

    Caract.: 11

    Erro: permissão negada.

    Código: 800A0046

    Origem: Erro de tempo de execução do Microsoft VBScript

     

     

     

     

     

     

    sexta-feira, 28 de março de 2008 16:25
  • Reginaldo, testei aqui e funcionou perfeitamente, veja se o usuário SYSTEM está com controle total na pasta, pois era para funcionar.

    sexta-feira, 28 de março de 2008 17:40
  • Oi Laerte,

     

    Eu verifiquei as pastas onde se encontram os scripts, também no domínio (onde estou aplicando a GPO) e na guia segurança dos mesmos o system está com permissões de controle total. Faltou mais algum lugar?

    Será que estou com problema de AD?

    Existe alguma ferramenta para verificação padrão de AD?

     

    Ops! Percebi dentro do GPO que criei por computador que na guia segurança o system está com direitos de LEITURA/GRAVAÇÂO/CRIAR TODOS OS OBJETOS FILHO/EXCLUIR TODOS OS OBJETOS FILHO sem a opção de CONTROLE TOTAL (sei que se marcar controle total vai de quebra o APLICAR DIRETIVA DE GRUPO junto) é isso mesmo?

     

    segunda-feira, 31 de março de 2008 12:44
  • Rginaldo, você olhou se na pasta Office11 o System tem controle total, pois o problema não é na GPO e sim na conta do usuário pois o script está sendo executado Wink

    segunda-feira, 31 de março de 2008 14:33
  • Laerte,

    Descobri o problema e prometa que não vai me xingar!!!! rsrsrs

    Lembra o caminho do script quando você esta criando a GPO?

    A anta aqui na hora de adicionar o arquivo foi pelo procurar e ficou isso: \\servidor\SYSVOL\domínio\scripts\nome do script.vbs e alterei para \\servidor\netlogon\nome do script.vbs  aí funcionou!

     

     

     

    segunda-feira, 31 de março de 2008 14:59
  • esquenta não, acontece nas melhores familias Big Smile

     

    mas que bom que conseguiu resolver o problema, não esqueça de classificar a resposta caso tenha lhe ajudado Wink

    segunda-feira, 31 de março de 2008 15:16
  • Obrigado pela atenção e boa vontade de ajudar!

     

    Já estou qualificando.

     

    Abs.

    segunda-feira, 31 de março de 2008 16:14