Autor
|
Tema: [Peticion] Batch de Notificacion Conexion a Internet (Leído 4,736 veces)
|
Gigabyte666
Desconectado
Mensajes: 11
|
Hola a todos, estoy tratando de adentrarme en el mundo del BATCH, y se me ha ocurrido hacer un batch que este ejecutado al momento de caerse la conexion a internet anuncie "No estas conectado a internet", y te avise cuando se reconecte "Te conexion se a restablecido"... El problema es que trate de empezar @echo off ping yahoo.com.mx -t if Cuando llegue ahi, no pasaron ni 10 seg cuando me puse a investigar cual seria la condicion para cuando hay respuesta y para cuando no la hay... Bueno espero que me ayuden... Gracias de antemano Saludos.
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Hola Gigabyte666, puedes usar el IF ERRORLEVEL para almacenar valores de error Un Ejemplo en una sola linea : ping www.youtube.com & if errorlevel 1 (msg * No hay conexion) else (msg * Si hay conexion) Nota : Si la solicitud de ping no haya el host, el errorlevel lo tomara como valor 1 y se ira a donde dice : No hay conexion. Otro Ejemplo : @echo off cd %windir%\system32 @echo on ping google.com @echo off if errorlevel 1 (goto no) else (goto si)
:no msg * No estas conectado a Internet exit
:si msg * Tu conexion se ha restablecido exit Bueno, Adios
|
|
|
En línea
|
|
|
|
NadiceJMA
Desconectado
Mensajes: 185
Nca
|
brother, la verdad este codigo esta buen trip, no tenia conocimiento de los mensajes porq aun soy nuevo en el bath, pero bueno gracias, igual por ahora estoy haciendo un aplicacion para cambiar la ip publica de una persona sin usar proxy de una manera super sencilla.....
ZALUDOS
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Bueno espero les haya servido, yo tambien soy algo nuevo en este lenguaje, y aun me faltan muchisisisimas cosas por aprender... Pero bueno... Adios
|
|
|
En línea
|
|
|
|
~[uNd3rc0d3]~
Desconectado
Mensajes: 188
programando...
|
en vez de usar 1 en el error level usa toda la amplitud de errores posibles 1 2 3 4 5 6 7 8 9 9009 haci que mejor @echo off cd %windir%\system32 @echo on ping www.google.com @echo off if not %errorlevel%==0 (goto no) else (goto si)
:no msg * No estas conectado a Internet exit
:si msg * Tu conexion se ha restablecido exit bueno tambien hay que tener en cuenta que al ping le podes regular las peticiones asi tambien como los tamaños saludos
|
|
|
En línea
|
leete las reglas asi todos estamos mejor
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Hola, si claro, tambien lo puedes hacer como dice ~[uNd3rc0d3] @echo off cd %windir%\system32 @echo on ping www.google.com @echo off if not %errorlevel%==0 (goto no) else (goto si)
:no msg * No estas conectado a Internet exit
:si msg * Tu conexion se ha restablecido exit Nomas le cambiarias aya arriba el (goto no) por (goto si), antes del Else, ya que dice : if not %errorlevel%==0 (goto no) else (goto si) Solo estan intercambiadas las etiquetas en el code de ~[uNd3rc0d3]~ Bueno, adios
|
|
|
En línea
|
|
|
|
Gigabyte666
Desconectado
Mensajes: 11
|
Muchisimas gracias compañeros... procedo a probar entonces...
Gracias denuevo por tomarse un tiempo para ayudarme... Ya les digo como me fue
|
|
|
En línea
|
|
|
|
Hendrix
|
Aqui te dejo una variante que e codeado, algo mas complejo que los codigos que se han peusto pero igual de funcional, lo dejo para que sepan como se usan las pipes en batch y como guardar los resultados de uncomando dentro de una variable. for /f "tokens=*" %%A in ('ping www.google.es -n 1 ^| find /c "agotado"' ) do set var= %%A
Un Saludo PD: Mirandolo bien, mi codigo es menos funcional que el vuestro, ya que solo funciona en Windows que esten en español y encima solo en XP por lo del comando Set, pero bueno, hay queda otro metodo mas de obtener si hay conexion en un XP español
|
|
|
En línea
|
"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
|
|
|
|
|