none
Executar comando e só rodar a proxima linha após conclusão RRS feed

  • Pergunta

  • Boa tarde a todos,

    Estou com um pequeno problema, talves alguém possa dar uma força.
    Eu utilizo o objeto descrito abaixo para executar comandos (como se fosse Menu Iniciar --> Executar)

    Set WshShell = Wscript.CreateObject("Wscript.Shell")
    Wscript.Run "Comando"

    So que ele executa e passa para o próxima linha antes de concluir o comando que coloquei para executar.
    Alguém conhece algum outro objeto que aguarde a conclusão do comando para ir para a próxima linha?

    Obrigado!

    Ps: Não tinha visto este forum antes... parabéns aos participantes e moderador, o nível está muito bacana!

    Atenciosamente,
    Douglas Tesch



    quarta-feira, 14 de janeiro de 2009 15:56

Respostas

  • Douglas

     

     

    Para executar um aplicativo por vez basta definir um parametro no codigo citado por voce

     

    Set WshShell = Wscript.CreateObject("Wscript.Shell")
    Wscript.Run "Comando",1,true

     

    o ultimo parametro quando true, procede com o script apenas quando a aplicação é finalizada

    se voce definir false, o script continua sem o termino da aplicação

     

    abracos

     

     

    quinta-feira, 15 de janeiro de 2009 01:17

Todas as Respostas

  • Douglas

     

     

    Para executar um aplicativo por vez basta definir um parametro no codigo citado por voce

     

    Set WshShell = Wscript.CreateObject("Wscript.Shell")
    Wscript.Run "Comando",1,true

     

    o ultimo parametro quando true, procede com o script apenas quando a aplicação é finalizada

    se voce definir false, o script continua sem o termino da aplicação

     

    abracos

     

     

    quinta-feira, 15 de janeiro de 2009 01:17
  •  

    Tiago,

     

    Problema resolvido! Muito obrigado!

    Agora vou participar deste forum, qualquer coisa que eu possa ajudar, estou a disposição.

     

    Abraço!

    quinta-feira, 15 de janeiro de 2009 15:35
  • Ola Tiago, eu tenho o seguinte codigo que preciso tirar o sleep 10000

    Como fazemos para iniciar automaticamente e chamar a proxima instalacao, apos terminar a atual?

    Option Explicit
    
    Private auto
    Set auto = CreateObject("WScript.Shell")
    auto.Run "dotNetFx40_Full_x86_x64.exe"
    WScript.sleep 10000 ' 10sec wait
    msgBox "OK Clique para irmos para a proxima etapa.", vbInformation, "Quando terminar clique em OK."
    
    auto.Run "dotNetFx40LP_Full_x86_x64ja.exe"
    WScript.sleep 10000 ' 10sec wait
    msgBox "OK Clique para irmos para a proxima etapa.", vbInformation, "Quando terminar clique em OK."
    
    auto.Run "dotNetFx40LP_Full_x86ja.exe"
    WScript.sleep 10000 ' 10sec wait
    msgBox "OK Clique para irmos para a proxima etapa.", vbInformation, "Quando terminar clique em OK."
    
    auto.Run "setup.exe"
    
    Set auto = Nothing


    silvio pontes

    sábado, 30 de junho de 2012 08:35
  • Silvio,

    Basta vc fazer como o exemplo do Tiago: adicionar os valores 1,True na linha com os métodos RUN.

    Exemplo:

    auto.Run "dotNetFx40_Full_x86_x64.exe",1,True

    Ref.:

    Run Method (Windows Script Host)

    msdn.microsoft.com/en-us/library/d5fk67ky(v=vs.84).aspx


    Fábio de Paula Junior

    • Sugerido como Resposta Silvio Pontes domingo, 1 de julho de 2012 23:04
    domingo, 1 de julho de 2012 20:41
    Moderador
  • Obrigado Fabio.

    Resolvido.


    silvio pontes

    domingo, 1 de julho de 2012 22:50