![]() |
Сигнал при подключении к сети
Суть задачи: при подключении к сети/инету воспроизвести какой-либо файлик. Естесственно всё это надо автоматизировать. Т.е. резултат: Клацаем на подключение к инету. Проходит получение адреса, проверка имени, пароля, регистрация компьютера в сети, воспроизводится какой-то звук. Как бы это реализовать?
|
Как идея написать чекер подключения к сети и когда он первый раз сможет подключиться воспроизвести какой-то звук, потом убить свой же процесс что бы звук не повторился.
Так же поместить его в автозагрузку. |
1)rasdial ,ping и echo ^G(набирает правый ALT 07).
http://www.darkchip.org/index.php?name=Pages&op=view&id=1 2)Так же еще как метод делаем ярлык на подключение,прежде убираем ,что пароль не требовало,а только отображало ход загрузки и в батнике вместо rasdial можно использовать c:\vpn.lnk(поменять на свое) ping -n 1 ya.ru && echo ^G(можно заменить на программу из ссылке выше HS_PLAY vpn.wav ) 3)Так же можно без дополнительных средств проиграть файл(совсем забыл про sndrec32) sndrec32 /play test.wav /close ,но что не было видно окна воспользуемся start /min sndrec32 /play test.wav /close |
Цитата:
А скажи пожалуйста, что будет если пакет не доставлен (не ответил хост)? Также интересно узнать что будет если доставлен? У тебя в обоих случаях звук проиграется, так как у тебя нет условия. |
Цитата:
if %errorlevel% 0 (команда) else (команда) 2)Но лучше конечно по rasdial смотреть,более четкий результат будет. 3)Незнаю,как вы тестировали но && выполняется в том случаем если %errorlevel%==0 .Лично у меня отрабатывает только при 0 . Буду рад вашим замечаниям по этому поводу. |
Цитата:
|
Простите, забыл вобще про топик :)
m0nzt3r, софтина делала именно то, что нужно одной своей опцией, но держать ради одной опции (причём настолько банальной :) ) всю софтину не хотелось. SpangeBoB, спасибо, натолкнул на верную мысль и по твоим советам всё и сделано. И так, что же вышло: Цитата:
vpn.lnk - ярлык для подключения к VPN. Как ссылатся сразу на само подключение - не вьехал, поэтому остановились на ярлыке. В данном случае он лежит в одной папке с батником. Иначе просто дописваем к нему адрес типа C:\my_internet_connections\vpn.lnk. По его вызову у нас происходит процедура подключения, в котрой кстати должны логин и пароль не запрашиватся. (Убрать этот запрос не сложно. Открыв свойства подключения просто снимаем галочку "Запрашивать имя,пароль, сертификат и т.д." на вкладке "Параметры"). Если же запрос пароля будетвключен, то просто пинг, из следующей строки, отработает и вернёт ошибку. ping google.com - Проверка наличия соединения с внешним миром опять таки довольно банальным образом. (SpangeBoB, количество отправляемых пакетов оставлено по умолчанию намеренно, потому что не всегда подключение разчехлялось сразу и ответ проходил только в третьем запросе. Возможно справедливо только лично для меня. ) if %errorlevel%==0 (start /min sndrec32 /play /close %windir%/Media/tada.wav) - если пинг завершился удачно, то в переменной окружения %errorlevel% будет записан 0. Неудачно (т.е. связь не установлена) - не 0. Если же 0, то выполняем строку start /min sndrec32 /play /close %windir%/Media/tada.wav. start /min - позволит нам запустить приложение в свёрнутом виде. sndrec32 /play /close %windir%/Media/tada.wav - позволит нам проиграть звуковой файл по указанному адресу с помощью утилыты звукозаписи из стандартного набора венды и закрытся по завершении воспроизведения. Минусы: 1.Вылазит окно командной строки. 2.Тратится время на ожидание прохождения пингов. (Если бы окошко командной строки не вылазило - возможно этот минус отпал бы сам собой). 3. Выезжает на панели задач звукозапись в свёрнутом виде, и по окончании воспроизведения уезжает. Не гламурненько как-то :) |
| Время: 07:33 |