Автоподключалка мобильного интернета ReConnecter.
Вложений: 1
Несколько надоело мне то, что мой модем Huawei E220 при проезде по маршруту на работу и обратно несколько раз теряет сигнал. И, естественно, сам подключаться при восстановлении не хочет. Написать скрипт в виде бат файла я не захотел. Потому что его будет сложно отличить от других командных окон.
Ну и решил я написать простенькую софтинку, которая будет поддерживать подключение к интернету, и, если надо, будет пинать модем. Результат лежит в аттаче. Принцип действия. При нажатии на кнопку Connect посылается команда устройству PPP "подключиться". После истечения промежутка времени, заданного величиной Connection Time, софтинка посылает пинг на три разных сервера. Если хоть один из них пришел - инет есть. Дальше пинг шлется с интервалом, заданным параметром Period. Если период задан равным 0 - то пинги слаться не будут. Но мы все равно проверяем статус соединения средствами винды. Если попытка подключения оказалась неуспешной - то попробуем разорвать соединение, послав ему команду "отключить". А потом все сначала. Если флажок AutoReconnect не установлен - то при разрыве соединения никаких действий не будет выполнено. В общем-то, программа может поддерживать любое PPP соединение. Достаточно лишь указать программе его имя. Программа требует .Net4.0 framework. |
Во це дело...спасибо.
Вопрос: что нужно вбивать в графу Connection Name? Модем MF-180 от Билайна. |
Нужно вбивать имя сетевого подключения. Главное, чтобы модем не требовал запуск спец софтинок для подключения.
Например, у меня карточка от UTel. Я себе создал PPP соединение с именем UTel, в нем указал какой модем пользовать. Это соединение появилось в списке сетевых подключений. Теперь мне достаточно в списке том выбрать UTel и нажать кнопочку "Подключить". И винда сама дозвонится по нужному номеру, указанному в настройках этого соединения, и установит связь. Так вот моя програмка нажимает на кнопку "подключить" того соединения, имя которого прописано в графе Connection Name. Кстати, я тут подумал - если для установления соединения необходимо запускать програму от провайдера - можно добавить в мою програмку запуск любого приложения. Конечно, если это кому-то надо. |
Вложений: 1
Перевел на русский язык.
|
Очень интересно, буду пробовать.
На заметку: в Windows 7 есть системное сообщение о том, что произошел выход из хибернейта, можно его заюзать, красивое решение будет: Windows 7 записывает событие с номером 300 в журнал Microsoft-Windows-Diagnostics-Performance Инфа отсюда: http://pccar.ru/showthread.php?t=18809&page=16 И оттуда: http://www.outsidethebox.ms/12241/ |
Думал об этом. Но пришел к выводу, что привязываться к гибернейту не стоит. Тут всего лишь таймер вертится, и при выходе из гибернейта он в очередной раз проверит состояние инета и подключит его заново.
В машине софтинка катается неделю - вроде стабильно ) |
Поставил и Нет4, и саму прогу - что-то опять не работает... один денек покатался вроде бы помогало при выходе из кибернейта, а после очередной перезагрузки компа - в проге пишет то коннект- то дисконнект с равными интервалами, те прога пытается зацепиться за интернет, но не может... Быдлайновская прога в трее, имя в коннекте задано правильно - Beeline. С самой проги все ок подключается... где я мог напортачить? И в догонку - в настройках программы время задается, я так понял - в секундах?
|
Да, в секундах.
А удается ли подключить инет через диспетчер сетевых подключений? |
Цитата:
|
Программа выполняет подключение через запуск "rasdial.exe имя_подключения". Это эквивалентно нажатию кнопки "подключить" на нужном подключении в диспетчере подключений. Если твой модем поддерживает такое - то программа сможет им управлять.
Но если модем такого не умеет - то в принципе, можно переделать программу так, чтобы она запускала нужные программы с указанными аргументами для установления соединения и для его отключения. Проверь, плз, какой из вариантов твоему модему подходит. Стоит заметить, что во втором случае обязательно надо будет указать какой командой подключать и отключать. |
А запускать с параметрми можно?
Типа "ReConnecter.exe /connect" и "ReConnecter.exe /disconnect" ? |
В данной версии такой функционал не реализован.
А он нужен? |
Цитата:
Я просто не знаю другого способа включать - выключать модем из под оболочки типа iCar, не делая лишних телодвижений. Хотелось бы.:blush: |
Ок, как будет минутка - добавлю.
Хотя, честно говоря, я у себя однажды включил его, и забыл даже как он выглядит. Он просто поддерживает соединение, и все ). А выключать модем ни разу не надо было... |
Цитата:
Вообще-то пару дней поездил и не скажу, что получается забыть о подключении модема. Спустя какое-то неопределённое время вдруг обнаруживаю, что связи нет, хотя программа твердит: "Подключено", и никаких действий не производит. Нажать кнопку "Отключить" или "Подключить" не удаётся. И вообще программа просто висит. После принудительного перезапуска всё нормально начинает работать. Сейчас попробовал - вроде вторая копия не запускается. Наверное глюки, связанные с зависанием программы. |
Вторая копия не должна запускаться. Если таки запускается - надо выяснять почему. Возможно, он не видит активную копию.
В трей - сделать можно. Но для этого было бы неплохо нарисовать для него какую-то иконку, чтобы по ней можно было его распознавать. Со стандартной это не столь очевидно ). Если кто-то нарисует иконку - я сделаю сворачивание в трей. По зависанию - странно. Зависать в нем нечему. Особенно так, чтобы не реагировал на кнопки. Единственное, что было у меня похожего - это зависание службы подключения. Т.е. она висит в состоянии "подключено", но данные не идут. Отключить не представляется возможным. Но тут реконнектер видит, что пинг не проходит, и героически следует по циклу "отключить - подключить". Ес-сно, безуспешно, потому что служба висит. Помогает только перегруз компа. Глубоко эту проблему не копал... Кстати, такое было и до использования реконнектера. Цветной прямоугольник - когда писал прогу - думал об этом, даже сделал. Не понравилось. Выкинул. Если востребовано - сделаем еще раз. С передачей параметров через командную строку получился затык, связанный с передачей данных уже активному процессу, если реконнектер был уже запущен до того. Нужно немножко больше времени, чем предполагалось, а его сейчас, увы, нету... Как будет возможность - постараюсь реализовать все это ). |
Цитата:
Цитата:
Цитата:
Цитата:
|
Обновил программу в первом сообщении:
- При сворачивании - сворачиваем в трей, вместо паннели задач. - Иконка программы теперь зависит от состояния. Иконки любезно нарисовал Andy_ro, за что ему большое спасибо! - Цвет надписи состояния так же зависит от состояния, что позволит не читать саму надпись ))) - Теперь ReConnecter понимает две команды через командную строку: ReConnecter.exe -connect ReConnecter.exe -disconnect |
Цитата:
Делюсь. У меня получалось с этим справиться без перезагрузки, запуская BATник со строчками: taskkill /f /im ReConnecter.exe @rasdial "MTS Internet RU" /DISCONNECT @start "" "C:\ReConnecter.exe" после чего всё вставало на свои места до следующего раза ~час-два. Иногда видел сообщение, что данный процесс отсутствует, но всё равно всё срабатывало. P.S. Почту проверь. |
Цитата:
Когда у тебя подключение виснет - что происходит, если в реконнектере нажать кнопку "Отключить"? И что происходит если нажать кнопку "отключить" на самом соединении? |
Цитата:
__________________________________________________ ______ Просто без всяких оговорок первая строчка:taskkill /f /im ReConnecter.exe убивает процесс, а потом уже с чистого листа. |
Цитата:
Пишет, что отключает, но потом так подключение подключенным :smile1: и остаётся. |
А команда "@rasdial "MTS Internet RU" /DISCONNECT" таки его полностью отключает в таком состоянии? Очень странно..
|
Цитата:
|
Значит, решения пока нет (
|
Цитата:
Может какую службу принудительно выключать-включать, чтобы всё грохнуть? |
Я пробовал выдергивать модем - не помогает.
Службу - я не нашел (. |
О как ,в свое время думал сам писать такую программку ,спасибо что ты есть)
НО! отваливания своего модема ёта победил след образом : 1.В диспетчере снял галочки "разрешить пробуждать ..." и "разрешить отключать для экономии энергии" 2. с помощью ихнего ТП прописал выданный ip адрес и dns в свойствах подключения . И радости моей не было предела ,до этих манипуляций мондем жил своей жизнью ,в редких случаях своего бодрствования мог отвалиться без объяснения причин ,теперь пришла стабильность без доп программ ,всем советую изначально сделать тоже самое ибо ложных отключений\подключений станет в разы меньше. Проблема была не в плохом проводе\питании а в отторжении 8кой "нестабильного" подключения ,но это уже не важно. В итоге ,по неизвестным мне причинам может порваться "сетевое подключение" при этом усби устройство не гавкает ,и не пропадает ,происходит крайне редко ,раз в неделю наверное максимум . И в случае выезда из зоны lte при обратном въезде в нее же интернет не возобновляется ,надеюсь решить эти маленькие неудобства с помощью вашей программки ,еще раз спасибо. |
Цитата:
|
В данном случае техподдержка, а так ваще другая смысловая нагрузка )))
|
заметил, что при выходе из гипернации отсутствует значок модема в икаре и радио не "поёт"!... пробовал принудительно нажимать на подключение в самой софтине (у меня мегафон), результата нет , одна надпись - соединение разорвано.... Если перезагрузить, то все работает... Эта программа может решить мою проблему? и еще.. в расширенных настройках икара есть функция активации (деактивации) подключения модема... пробовал активировать ее... результат нулевой.
Заранее благодарю за ответы |
Реконнектер лишь "нажимает" кнопку "подключить" в свойствах твоего интернет соединения. Если с соединением что-то не так, то он нажмет "отключить", а потом снова "подключить". Если эти действия не помогают в обычном режиме - реконнектер ничем не поможет, увы.
|
Цитата:
|
а можно модернизировать программу, чтобы она убивала процесс и вновь его подключала?, тогда проблема будет решена
... мне как то давали батник для killa gps gate.... @echo off rem Завершение процесса gpsgatexp.exe taskkill /f /im gpsgatexp.exe rem Запуск программы gpsgatexp.exe start c:\"Program Files"\Franson\"GpsGate 2.0"\GpsGateXP.exe exit |
А что это даст? Кого убивать то?
|
Цитата:
|
Все равно не понял:
- какой у икара значок и как он связан с интернетом? - какой процесс висит и кого убивать и запускать? |
Цитата:
Вот я и хотел, чтобы твоя прога чуть была модернизирована.. При определении зависания процесса (его можно выставлять самостоятельно или программно автоматически), твоя прога принудительно бы останавливала сам процесс... и вновь бы его запускала... Не знаю, понятно ли объяснил? С уважением, Андрей |
Теперь понятно. Сделаем!
|
Цитата:
Жду с нетерпением!! |
Часовой пояс GMT +4, время: 16:02. |
Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot