none
Executar *.bat em segundo plano. RRS feed

  • Pergunta

  • "Boa tarde! Gostaria que se alguém soubesse me informasse como eu faço para executar um arquivo batch em segundo plano. Eu preciso executar um arquivo bat no logon do windows, só que o usuário não pode ter a opção de interromper a execução deste. Como eu resolveria isso?

    Obrigado!"

     

    Pessoal, não descobri como executar em segundo plano, mas descobri uma linguagem para logon scripts que é o kixtart, dá para fazer diversas coisas que são feitas em bat, e também tem uma função que é a break, que se chamando o script em batch impede o seu fechamento, caso o usuário tente forçar a finalização do script, o sistema faz logoff. Eu achei bem interessante e deixo o link:

    http://www.adminscripteditor.com/syntax.asp?l=k&lim=1


    • Editado romulohannun quinta-feira, 24 de novembro de 2011 14:53 Nova solução
    terça-feira, 11 de maio de 2010 18:00

Respostas

  • Pessoal, não descobri como executar em segundo plano, mas descobri uma linguagem para logon scripts que é o kixtart, dá para fazer diversas coisas que são feitas em bat, e também tem uma função que é a break, que se chamando o script em batch impede o seu fechamento, caso o usuário tente forçar a finalização do script, o sistema faz logoff. Eu achei bem interessante e deixo o link:

    http://www.adminscripteditor.com/syntax.asp?l=k&lim=1


    • Marcado como Resposta romulohannun quinta-feira, 24 de novembro de 2011 14:54
    quinta-feira, 24 de novembro de 2011 14:54

Todas as Respostas

  • Você de usar um script em .vbs rodar o batch em 2º plano.

    Segue o script:

    set objSh = CreateObject("WScript.Shell")
    objSh.Run "cmd /k <caminho do script.bat>", 0

     

    Espero ter ajudado.


    Anderson Provasi Pereira
    quinta-feira, 13 de maio de 2010 19:51
  • Você de usar um script em .vbs rodar o batch em 2º plano.

    Segue o script:

    set objSh = CreateObject("WScript.Shell")
    objSh.Run "cmd /k <caminho do script.bat>", 0

     

    Espero ter ajudado.


    Anderson Provasi Pereira

    Farei o teste, obrigado!
    segunda-feira, 17 de maio de 2010 19:53
  • Olá, estou com a mesma necessidade, pois temos uma impressora HP 1020 em rede e quando enviamos impressões elas ficam presas, necessitando reiniciar o spooler de impressão, criei um bat para reiniciar o spooler a cada 5 minutos, resolvendo o problema da fila de impressão, o problema é que fica aparecendo a janela e atrapalhando o trabalho do usuário do computador ao qual está conectada a impressora.

    Tentei utilizar esta linha de comando que você sujeriu, criei outro bat com esta linha, mas recebo a seguinte mensagem de erro:

    'objSh.Run' não é um reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.

    O que devo fazer?

    quarta-feira, 22 de dezembro de 2010 12:00
  • Boa tarde,

     Existe uma outra solução bem prática de se efetuar instalações em massa e em segundo plano onde:

    - Não necessita acessar a máquina remotamente (modo gráfico).
    - Não necessita ter softwares clientes nas máquinas
    - É Freeware.

    Para isso, baixa instalar o pacote abaixo:

    http://www.microsoft.com/brasil/technet/sysinternals/systeminformation/pstools.mspx

    Nesse pacote terá uma ferramenta chamada psexec.exe com ela você pode montar um script para efetuar a instalação em segundo plano nas máquinas dos usuários.

    Segue um exemplo básico de script que pode ser utilizado para instalar uma aplicação via psexec

    psexec @maquinas.txt -u domínio\user -p senha -c -d arquivo.msi

    No exemplo acima o psexec irá instalar o arquivo.msi em todas as máquinas que estiverem listadas no arquivo maquinas.txt

    Você pode extrair as máquinas através do ad para alimentar esse arquivo ou incluí-lo em um script de inicialização. A outras funcionalidades que também podem ser incluídas além de outros comandos em lote para melhorar ainda mais o script.

     Qualquer dúvida é só mandar.



    MCP, MCDST e MCSA 2003
    sexta-feira, 24 de dezembro de 2010 15:27
  • Pessoal, não descobri como executar em segundo plano, mas descobri uma linguagem para logon scripts que é o kixtart, dá para fazer diversas coisas que são feitas em bat, e também tem uma função que é a break, que se chamando o script em batch impede o seu fechamento, caso o usuário tente forçar a finalização do script, o sistema faz logoff. Eu achei bem interessante e deixo o link:

    http://www.adminscripteditor.com/syntax.asp?l=k&lim=1


    • Marcado como Resposta romulohannun quinta-feira, 24 de novembro de 2011 14:54
    quinta-feira, 24 de novembro de 2011 14:54