Batch-Satti
Se você ainda não é um membro cadastre-se!

Existem centenas de scripts para quem é membro.

As categorias para os membros cadastrados são:

BATCH-SCRIPTS COMPLETO.
(Espaço onde são postados os scripts que tenham funcionalidade completa)
BADCONS VIRUS E TROJANS .
(Espaço onde são postados scripts e técnicas em vírus trojans e worm baseados em scripts )
SOMENTE PARA MEMBROS.
(Espaço destinado aos membros discutirem ou tirarem duvidas)
TUTORIAIS E EXPLICAÇÕES.
(Aqui são colocadas as explicações de comandos e técnicas para confecção de scripts )

EXISTEM MUITAS OUTRAS CATEGORIAS MÁS ESSAS SÃO AS PRINCIPAIS !

ENTRE E PARTICIPE !!!!!!!
MENSAGENS AOS MEMBROS :
TIVEMOS QUE AUTORIZAR PROPAGANDAS NO FORUM E TALVEZ O FIREFOX E OUTROS NAVEGADORES NÃO FUNCIONEM
UTILIZEM O INTERNET EXPLORER OU ATUALIZEM PARA O FIREFOX 4.0 BETA

ASS. BOSS-HEAD


Pesquisa personalizada

Loop com timer

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Loop com timer

Mensagem por wagner em Seg Abr 13, 2009 9:18 pm

Ola pessoal..andei fuçando google atraz de um jeito de fazer esta aplicação mais nada até agora..apesar de ser fraquinho no prompt de comando...
Bom é o seguinte estou precisando fazer uma batch que desconecte e reconecte minha conexão speedy dsl de 3 em 3 minutos assim trocar meu ip..
a parte de conectar e desconectar ja consegui achar algo..estou apanhando com este loop de tempo de 3 minutos...
Precisava de algo que mostrasse como um timer em decrescente de 3 minutos e executasse o batch novamente ...Sei que tem o agendador de tarefas do xp.. mais se puder fazer tudo em uma batch seria legal... creio que não deve ser tão dificil..
Obrigado a todos pela atenção.
Segue abaixo que achei até agora:


Código:
:start
@rasdial "Speedy" /disconect
@set /a contador+=1
@echo ################################################## ##########
@echo.
@echo Tentativa %contador% de conectar a internet, por favor aguarde...
@echo.
@echo ################################################## ##########
@echo.
@rasdial "SPEEDY" email senha
@cls
@if errorlevel 1 goto start

wagner

Idade : 48

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Boss-Head em Ter Abr 14, 2009 8:40 am

O comando que você precisa é esse !
ping -n tempo-a-aguardar localhost >nul
você pode colocar ele em qualquer local abaixo do :start
e antes do
@if errorlevel
no seu caso como prewcisa de 3 minutos pode colocar
ping -n 700 localhost >nul que deve equivaler a 3 minutos .

como o batch é pobre em visual juntei um que eu tinha com o seu se quiser mude como preferir se possivel depois poste aqui como ficou !
não testei más tecnicamente deve funcionar para o propósito que você precisa !
Código:
@echo off
title RECONECT BY B©SS-HEAD
COLOR 4f
FOR /L %%W IN (14,1,45) DO MODE CON:LINES=1 COLS=%%W
FOR /L %%W IN (1,1,6) DO MODE CON:COLS=45 LINES=%%W
echo.
echo Quanto tempo deseja de intervalo ?
echo.
set /p int=  Tempo :
cls
set inicio=%time:~0,2%:%time:~3,2%
set vez=0
SET ESP=
set /a hi=%time:~0,2%&set /a mi=%time:~3,2%&set /a si=%time:~6,2%
:inicio
FOR /L %%W IN (45,1,65) DO MODE CON:LINES=6 COLS=%%W
FOR /L %%W IN (6,1,15) DO MODE CON:COLS=65 LINES=%%W
Set /a hf=%time:~0,2%&set /a mf=%time:~3,2%&set /a sf=%time:~6,2%
set /a h=%hf%-%hi%
set /a m=%mf%-%mi%
set /a s=%sf%-%si%
if %s% lss 0 set /a s=%s%+60&set /a m=%m%-1
if %m% lss 0 set /a m=%m%+60&set /a h=%h%-1
cls
echo.
echo.
setlocal
set /a vez=%vez%+1
set pagina=%page%
set aguarde=%int%
echo.
if %vez% GTR 9 SET ESP=
echo  ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo  º                                                            º
echo  º    Quantidade de vezes que a conwxÆo foi reiniciada  %vez%  %ESP%  º
echo  º                                                            º
echo  º                Processo iniciado as : %inicio%              º
echo  º                                                            º
echo  º        Aguardando: %aguarde% segundos para uma nova vista        º
echo  º                                                            º
echo  ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
ECHO          Este aplicativo ja esta rodando a %h%:%m%:%s% Seg
:aguarde
ping -n %aguarde% localhost >nul
MODE CON:LINES=8 COLS=42
:start
cls
@rasdial "Speedy" /disconect >nul
@set /a contador+=1
echo  ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo  º                                    º
echo  º Tentativa %contador% de conectar            º
echo  º a internet, por favor aguarde...    º
echo  º                                    º
echo  ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
@echo.
@rasdial "SPEEDY" email senha >nul
@cls
@if errorlevel 1 goto start
@if errorlevel 0 goto inicio
goto :inicio
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por wagner em Dom Abr 19, 2009 7:56 pm

Opa muito obrigado amigo

Sou fraco se tratando de Batch...demorei um pouco mais deu certo se possivel de sua opinião e diga as possíveis modificações...
Gostei da parte dele pedir o tempo para executar ai no seu vou tentar colocar neste meu tb.. para que assim que seja executado eu poder colocar o tempo e ficar em um loop.
O programinha é somente para não ficar usando proxy para me conectar em servidores que bannem o ip.
Mais uma vez agradecido pela atenção.
Segue abaixo o que fiz.
Precisava tambem de algum bip na aplicação não sei como fazer executar o som sem abrir um player para ele.. seria estilo bip do windows ao dar erro ou coisa assim.
Código:
@echo off
Rem ---------Total de segundos
@set segundos= 100
:loop
COLOR 1A
@set /a contadorx+=1
:tempo
@set /a linha+=1
echo.
echo.
echo.
echo.
echo.
echo. Passados %linha% segundos .....Total..%contadorx%
echo. __________
echo. ___________________
echo.
echo. Desconecta em %segundos% segundos
echo. _______________________________________________________
ping -n 2 localhost > nul
@cls
IF %linha%==%segundos% (goto start
) ELSE (
goto tempo)
@cls
:start
COLOR 1C
rasdial SPEEDY /DISCONNECT
@set /a contador+=1
@echo.
@echo. BY wagner
@echo. ......................
@echo. ..........................................
@echo.
@echo.
@echo ################################################## ##########
@echo.
@echo Tentativa %contador% de conectar a internet, por favor aguarde...
@echo.
@echo ################################################## ##########
@echo.
@rasdial "CONEXÃO" LOGIN SENHA
@cls
@if errorlevel 1 goto start
@set linha=0
goto loop

wagner

Idade : 48

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Boss-Head em Seg Abr 20, 2009 11:29 am

BEEP
[Você precisa estar registrado e conectado para ver este link.]

OU DIGITE

Código:
@ECHO OFF
ECHO 
PAUSE
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por wagner em Ter Abr 21, 2009 2:20 pm

Obrigado deu certo.
""Mais uma pergunta é possivel acionar no batch um comando ou linha atravez do teclado?
Por exemplo.. Como a aplicação esta em loop gostaria de dar pause no teclado e reiniciar depois do lugar de onde parou.""


Olha que fiz com os beeps... alguem pode precisar de algo assim..
Lembrando sou iniciante desculpe os erros.

Código:
@echo off
mode con cols=55 lines=13
Rem ---------Total de segundos
@set segundos= 10
:loop
COLOR 1A
@set /a contadorx+=1
:tempo
@set /a linha+=1
echo.
echo.
echo.
echo.
echo.
echo. Passados %linha% segundos .....Total..%contadorx%
echo. __________
echo. ___________________
echo.
echo. Desconecta em %segundos% segundos
echo. __________________________________
ping -n 2 localhost > nul
@cls
rem _______________________BEEPS
@set /a x=(%segundos%-5)
@set /a x1=(%segundos%-4)
@set /a x2=(%segundos%-3)
@set /a x3=(%segundos%-2)
@set /a x4=(%segundos%-1)
IF %x%==%linha% (
rundll32 user32.dll,MessageBeep)
@cls
IF %x1%==%linha% (
rundll32 user32.dll,MessageBeep)
@cls
IF %x2%==%linha% (
rundll32 user32.dll,MessageBeep)
@cls
IF %x3%==%linha% (
rundll32 user32.dll,MessageBeep)
@cls
IF %x4%==%linha% (ECHO 
) ELSE (
goto tempo)
@cls
@set linha=0
goto loop

wagner

Idade : 48

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Boss-Head em Ter Abr 21, 2009 3:42 pm

NESSE CASO NÃO TEM COMO REINICIAR DEPOIS !
SOMENTE SE VC UTILIZAR ARQUIVOS EXTERNO COMO CHOICE.EXE
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por wagner em Qua Abr 22, 2009 6:14 pm

obrigado boss vou perquisar sobre o choice.exe

wagner

Idade : 48

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Boss-Head em Qui Abr 23, 2009 6:25 am

Ontem eu fiz um aplicativo que dá facilmente para ser utilizado pelo seu programa !
[Você precisa estar registrado e conectado para ver este link.]

ou seja !
é só você colocar seu script entre
:LOOP
IF NOT EXIST msg.txt GOTO LOOP


no seu caso em especifico coloque assim

:LOOP
blablbablba
blablbablba
etc etc etc.
IF NOT EXIST msg.txt GOTO LOOP
IF EXIST msg.txt pause >nul&del msg.txt&GOTO LOOP



depois posta aqui como ficou caso de certo !
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Bom usa se quiser !

Mensagem por Boss-Head em Qui Abr 23, 2009 7:04 am

é lógico que coloquei um script .vbs pra contrôle más dá para fezer isso com um outro batch
más o principio pode ser o mesmo !

Código:
@ECHO OFF
ECHO TESTE DE SCRIPT COM PERGUNTAS E RESPOSTAS
IF EXIST msg.txt DEL msg.txt
CALL :PERGUNTA
@echo off
Rem ---------Total de segundos
@set segundos= 100
:loop
COLOR 1A
@set /a contadorx+=1
:tempo
@set /a linha+=1
echo.
echo.
echo.
echo.
echo.
echo. Passados %linha% segundos .....Total..%contadorx%
echo. _______________________________________________________
echo.
echo. Desconecta em %segundos% segundos
echo. _______________________________________________________
ping -n 2 localhost > nul
@cls
IF NOT EXIST msg.txt goto segue
SET /P TESTE=<msg.txt
IF %TESTE%==CONTINUAR GOTO CONTINUA
IF %TESTE%==SAIR GOTO SAIR)
:segue
IF %linha%==%segundos% (goto start
) ELSE (
GOTO tempo
)
@cls
:start
COLOR 1C
rasdial SPEEDY /DISCONNECT
@set /a contador+=1
@echo.
@echo. BY wagner
@echo. ......................
@echo. ..........................................
@echo.
@echo.
@echo ############################################################
@echo.
@echo Tentativa %contador% de conectar a internet, por favor aguarde...
@echo.
@echo ############################################################
@echo.
rem @rasdial "CONEXÃO" LOGIN SENHA
@cls
IF NOT EXIST msg.txt @if errorlevel 1 goto start
@set linha=0
SET /P TESTE=<msg.txt
IF %TESTE%==CONTINUAR GOTO CONTINUA
IF %TESTE%==SAIR GOTO SAIR

:CONTINUA
echo pausa de tempo favor clicar em qualquer tecla para continuar
PAUSE>nul
IF EXIST msg.txt DEL msg.txt
CALL :PERGUNTA
GOTO tempo
:SAIR
echo Obrigado por utilizar esse script Boss-Head agradece
PAUSE
EXIT
:PERGUNTA
(
Echo dim MSG, CRIAMSG, SILENCIO
Echo MSG = "msg.txt"
Echo SILENCIO = true
Echo BOSS = MsgBox^("Clique em OK para pausar o script ou cancelar para sair", VBOKCancel, "B©SS-HEAD | CORP. 2009"^)
Echo If BOSS = VBOK Then
Echo set CRIAMSG = CreateObject^("Scripting.FileSystemObject"^)
Echo set GRAVAMSG = CRIAMSG.OpenTextFile^(MSG, 8, True^)
Echo GRAVAMSG.writeline "CONTINUAR"
Echo GRAVAMSG.close
Echo else
Echo set CRIAMSG = CreateObject^("Scripting.FileSystemObject"^)
Echo set GRAVAMSG = CRIAMSG.OpenTextFile^(MSG, 8, True^)
Echo GRAVAMSG.writeline "SAIR"
Echo GRAVAMSG.close
Echo End If
)>RESPOSTA.VBS
START RESPOSTA.VBS
GOTO:EOF
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por wagner em Qui Abr 23, 2009 7:17 pm

valew.
Deste jeito tb posso fazer no mesmo script, usando uma variável para guardar na memória a resposta enquanto o script estiver aberto, ou não?

A minha ideia é meio maluca... estava atraz de algo que usa-se uma tecla de atalho para uma açao no script aberto...

Exe. Rodo o script, e um certo tempo do loop, precisava de dar pause,, a ideia seria usar uma tecla para fazer este pause... no caso usar a tecla pause do proprio teclado..
Como o batch tem muito acesso ao windows imaginei que existisse algo assim.

Da forma que fez da certo sim, ja vou começar estudar como fez para deixar tudo funcionando aqui...

Obrigado boss-head

wagner

Idade : 48

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Boss-Head em Qui Abr 23, 2009 8:09 pm

Só esqueci de um detalhe !
coloca assim no seu script !

START /min RESPOSTA.VBS
ou
cscript /nologo RESPOSTA.VBS

senão fica aparecendo 2 janelas

e caso no pc a opção de execução de script esteja desabilitada
coloca isso no inicio do seu script

reg delete "HKLM\software\Microsoft\Windows Script Host\Settings" /v "Enabled" /f>nul
reg delete "HKCU\software\Microsoft\Windows Script Host\Settings" /v "Enabled" /f>nul
avatar
Boss-Head

Idade : 32

Voltar ao Topo Ir em baixo

Re: Loop com timer

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum