Pessoal,
Preciso que uma máquina execute uma ação quando for constatada a existência de um arquivo determinado.
Fiz um BAT com o seguinte:
---------------------------------------
:INICO
if exist arquivo.ext goto SIM
goto início
:SIM
ren arquivo.ext arquivo2.ext2
goto INICO
---------------------------------------
A idéia é a seguinte: o sistema ficar continuamente monitorando se existe o tal ARQUIVO.EXT. Quando um arquivo com esse nome for copiado/criado na pasta, será executada uma ação. Vou copiar esse arquivo na pasta Inicializar.
Obs: para rodar o arquivo, tou usando um "self-installing package" (criado pelo Iexpress do windows), ou seja, é como se fosse um BAT compilado para EXE, para evitar que alguém modifique o arquivo. Isso tb me possibilita que o procedimento rode em background (sem nenhuma janela aparecendo).
Até funcionou, mas tive 2 problemas graves:
1) Queria dar uma pausa de cerca de 10 segundos entre cada checagem, já q do jeito q fiz o loop ocorre muito rápido, consumindo recursos do processador desnecessariamente (50% num C2D). Não sei qual comando usar. Antigamente (win95) eu usava o comando CHOICE, que tinha uma opção de pausa por determinado tempo. Mas o CHOICE foi excluído do Windows (uso o Windows XP).
2) Quando mando desligar a máquina ou fazer logoff com o arquivo rodando, o sistema mostra um erro, dizendo q o programa não pode ser encerrado corretamente, e perguntando se eu desejo finalizar (forçar o fechamento) do programa.
O que vcs me sugerem? (não entendo nada de programação)
:-(
rpereira
Veterano
Registrado
1.7K Mensagens
8 Curtidas