Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/08/2010, 12:47
winweb89
 
Fecha de Ingreso: mayo-2009
Mensajes: 23
Antigüedad: 15 años
Puntos: 0
De acuerdo Respuesta: Crear .bat para determinar si hay conexión a internet.

Muchas gracias dogduck, lo he probado y funciona a la perfección.

Unicamente he tenido que hacerle un par de modificaciones, porque cuando se perdía la conexión entraba en un bucle y el procesador se ponía al 100% de uso.
Para solucionarlo he añadido una pausa despues de emitir el 'beep' y también he cambiado dicho pitido por la reproducción de un archivo .mp3, ya que fuera de la habitación del ordenador no se oía bien.

Incluyo el código tal como lo he dejado:

Código bat:
Ver original
  1. @echo off
  2. :inicio
  3. if exist testigo.txt del testigo.txt
  4. set ERRORLEVEL =
  5. ping -n 1 www.google.com > testigo.txt
  6. rem La solicitud de ping no pudo encontrar el host
  7. echo Comprobando conectividad ...
  8. @find /C "La solicitud de ping no pudo encontrar el host" testigo.txt > null
  9. rem find /C "recibidos = 0" testigo.txt
  10.  
  11. rem si errorlevel = 0  ha encontrado recibidos=0 lo cual indica que no hay conectivida
  12. if %ERRORLEVEL%==0  goto pita else goto continua
  13.  
  14. :continua
  15. color 17
  16. echo Si hay conectividad    
  17. rem delay de 10min
  18. @ping -n 600 127.0.0.1 > null
  19. goto inicio
  20.      
  21. :pita
  22. echo No hay conectividad
  23. color cf
  24. rem Ejecuta el programa videoLAN y abre el archivo alarm.mp3 (las rutas pueden variar en cada caso)
  25. start "C:\Program Files\VideoLAN\VLC\vlc.exe" "C:\Alarm.mp3"
  26. rem delay de 5min
  27. @ping -n 300 127.0.0.1 > null
  28. goto inicio

Además, buscando por internet he encontrado otra forma para pausar la ejecución ( choice /c a /d a /t 300 /n ), aunque no se cual es mejor, y creo que choice no funciona en XP.

Salu2