Показать полную графическую версию : Создать бат-файл для того чтоб компьютер выключился сам когда пропадёт интернет
Здравствуйте Всем!
Если Вам несложно напишите пожалуйста бат файл для того, чтоб компьютер выключился сам если пропадёт интернет - он тут у нас часто пропадает вместе с электричеством.
(А в моё отсутствие бесперебойник не доживёт до поступления тока.Ну и хардам кранты будут видимо.)
Мне в ответы (mail.ru) дали только эти строки ''Сначала бесконечный цикл потом проверка пинг а потом выключение компа.'' и сказали что программистам это раз плюнуть.
Спасибо в любом случае!!!!
dorga6, Ваш UPS как-то подключён к машине или существует сам по себе?
Iska - СПАСИБО за оперативность, мой UPS сам по себе, к сожалению (Powerwalker)
dorga6, Написал простенькую программку на коленке.
1. Проверяет наличие интернета по кнопке(для тестирования) и по таймеру 1 раз в 1 минуту
2. Если инета нет - выведет инфу в что Инета нет. (Выключение пока не сделал)
От вас что нужно, протестировать со всеми возможными вариантами и отписаться что выводит "Инет есть" или "Инета нет":
1. С иммитировать отключение электричества.
2. С иммитировать отключение инета.
Из минусов, если у вас роутер, а инета нет по вине провайдера, опрос программой роутера будет успешен и будет считаться что инет есть, по моему так если не ошибаюсь. Но, раз вам нужна программа страхующая отключение, то при отключении электричества, роутер не будет найден и как следствие инета не будет тоже, т.е. выключение произойдёт успешно. Должно. :)
Проверьте, если что, допишу её...
greg zakharov
19-10-2015, 18:06
Примерное решение:@echo off
setlocal
set "net=HKLM\SYSTEM\CurrentControlSet\Services"
set "net=%net%\Tcpip\Parameters\Interfaces"
:loop
for /f "tokens=3" %%i in (
'reg query %net% /s ^| findstr /irc:"dhcpipaddress"'
) do (
if "%%i" neq "0.0.0.0" (
ping -n 1 127.0.0.1>nul
goto:loop
)
echo:Connection is lost...
rundll32 powrprof.dll,SetSuspendState Sleep
)
endlocal
exit /b
Drongo - премного Вам благодарен, просто завидую таким благородным и умным людям!
Если можно я завтра протестирую - тут навалилось всякое (родные помогают:):):))
СПАСИБИЩЕ!!!
greg zakharov Прямо не ожидал - есть ведь люди готовые помочь другим!
Огромное Вам СПАСИБО!!!
Drongo - Ваша Autoshutdown работает отлично при запросе наличия инета по кнопке (если его нет то выключает комп)
При имитации отлючения тока (у меня роутер - инет пропадает) такой же положительный результат.
Просьба, если возможно, пожалуйста сделайте чтобы прога сама автоматически срабатывала когда пропадёт интернет● СПАСИБО!!!
dorga6, Хорошо. Ждите конечный вариант.
Собственно с автором через ПМ уже решили вопрос. Отписался что работает. Вдруг кому ещё нужно, выкладываю архив.
1. При запуске сворачивается в трей и висит проверяя наличие инета
2. Один раз в минуту AutoShutdown делает опрос состояния сети: Есть\Нет.
3. Если статус наличия инета - Да, ничего не происходит, т.к. инет есть
4. Если статус наличия инета - Нет, запускается обратный отсчёт в 20 секунд и программа мигает значком.
5. После чего комп выключается.
1. При запуске прога сама сворачивается в трей и раз в минуту делает опрос наличия инета
2. Изначально такое окно
http://tnkscr.net/Oax1gs.jpg
3. Если инет есть, то окно так и будет висеть в трее в состояии опроса раз в минуту
http://tnkscr.net/1xhXxc.jpg
4. В случае исчезновения инета, окно AutoShutdown'a активизируется поверх всех окно с миганием кнопки на панели задач. И появится следующая надпись
http://tnkscr.net/QhmceZ.jpg
5. Через 20 секунд компьютер отключится.
Drongo, может шапку бы оформить, и ещё туда это?!
Да зачем, кому надо прочитает до конца, найдёт, просто пометить решённой можно.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.