O processo VBscript desaparece

1

Alguns dias atrás, notei pela primeira vez que um dos meus VBscripts parou sozinho, alguns segundos depois de começar. Acontece que o processo wscript.exe é morto cerca de 5 segundos depois de ser criado. Isso é bem exato. Eu escrevi um script de teste com:

wscript.sleep 4800
wscript.echo "hi"

Eu vejo o processo wscript.exe no TaskManager, vou ver a caixa de mensagem por uma fração de segundo depois de esperar 4,8 segundos. e então (e o processo) desaparece. Alterando o tempo para 5200 e nunca verei uma caixa de mensagem.
E aqui a coisa estranha: definindo o tempo para 5000, o processo também será morto na maioria das vezes, mas eu testemunhei 3 vezes que não foi morto. O processo não desapareceria até eu clicar em OK.

  • Mesmo comportamento para wscript.exe e cscript.exe

  • Clicar duas vezes no vbs do Explorer, ou executar o vbs a partir de um cmd.exe iniciado pelo administrador não faz diferença

  • Estou usando o Security Essentials (e tenho há muito tempo)

  • HijackThis mostra essa linha (que nem sempre está lá): O4 - HKLM .. \ RunOnce: [Malwarebytes Anti-Malware] C: \ Arquivos de Programas (x86) \ Malwarebytes 'Anti-Malware \ mbamgui. exe / install / silent (mbamgui.exe não é um processo em execução embora)

  • Quando executado com saída cscript é:

d:\temp>cscript tst.vbs
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

hi
Script execution time was exceeded on script "d:\temp\tst.vbs".
Script execution was terminated.

O código abaixo também mostra apenas um resultado se o tempo de cálculo for mantido abaixo de 5 segundos:

t1=Timer
For i=1 to 25000000
x = Rnd()*Rnd()
Next
MsgBox timer-t1

Na minha máquina, com 25000000 eu vejo o resultado uma fração de segundo, com 30000000 o resultado nunca é mostrado.

Existe alguma maneira de identificar qual processo é responsável por matar meu processo VBscript?

    
por mgr326639 17.12.2013 / 22:45

1 resposta

1

O tempo limite padrão é nenhum, então talvez você tenha configurado acidentalmente um tempo limite para o mecanismo de script .

Se esse não é o problema, você pode tentar monitorar o processo de script (WScript ou CScript) usando Sysinternals ProcMon .

    
por 17.12.2013 / 23:00