![]() |
|
Цитата:
|
seriousstas
Цитата:
У меня в него оконный функционал вставлен поэтому 300 мс. самое то. А вспомогательные скрипты я отдельно гружу через autorunner. Мне так проще. Цитата:
Работает она так... - Первый старт это получение параметров из системы через консольную утилиту netsh.exe. Из нее он получает... interface= --- название адаптера ssid= --- название сети profile= --- профиль подключения - Затем проверяет адаптер, подключен или нет. Если не подключен включает. - Затем пошел цикл проверки. Пингует сеть, если все хорошо ставит зеленую иконку в трее. Если пинг по двум адресам без ответа пытается подключится к сети, затем опять пингует, если есть ответ ставит зеленую иконку в трее, если ответа нет ставит красную иконку и пытается включить адаптер а затем подключится к сети... и уходит в начало цикла. Схема как раз и построена на пинге в цикле... т.е. пингуем if(true) если есть ответ ставим зеленую иконку ------else() ------ответа нет ставим красную иконку пытаемся подключится к сети ------пингуем ------------if(true) ------------если есть ответ ставим зеленую иконку ------------else() ------------ответа нет ставим красную иконку включаем адаптер затем подключаемся к сети ----уходим в начало цикла По поводу... Цитата:
Если про время ответа от пинга, то это время никак не влияет на время цикла. Это просто время ожидания ответа после отправки запроса. Время цикла скрипта можно хоть до 10 мс. уменьшить, но нам то нужно получить ответ с адреса на который мы отправили запрос... а раз ответа с адреса нет значит будет false и соответственно "Нет подключения". Это почти стандартная схема как и у мелкомягких, у них почти также работает сетевой зонд...http://jpegshare.net/images/ad/7c/ad...1a5439b28a.jpg иконка в трее при подключении к сети. |
120705
Цитата:
Да это гребаный ютюб))) со своими авторскими правами... Сейчас перезалью без звука. |
Цитата:
Цитата:
как только я кликаю по иконке - тут-же подключается .. |
Цитата:
Видео : https://www.youtube.com/watch?v=Ee0l...ature=youtu.be |
seriousstas
Я понял почему, спасибо за видос, нужны пробы))) Введи плиз в командной строке при отключенном сетевом соединении. netsh.exe wlan connect [профиль] [имя сети] "Беспроводная сеть" пример: netsh.exe wlan connect DIR-777 DIR-777 "Беспроводная сеть" |
Цитата:
связано с заптретами , мать их .. замени яндекс на Ping("www.google.com", 250) Цитата:
Вопрос здесь задал по теме . Посмотрим , мож ответят чего .. |
seriousstas
Ахаха... я всегда забываю про эти гребаные блокировки. Эх блин убрать бы всех этих дегенератов сверху и сразу жизнь наладится))) А что выдает ком. строка при вводе netsh.exe wlan connect [профиль] [имя сети] "Беспроводная сеть" ? у тебя просто профиль и ссид отличаются... http://jpegshare.net/thumbs/66/ca/66...ff1f418952.jpg а у меня они одинаковые... ssid=DIR-777 profile=DIR-777 Цитата:
|
пробовал и так
netsh.exe wlan connect My ASUS 2 My ASUS 2 "Беспроводная сеть" и так netsh.exe wlan connect [My ASUS 2] [My ASUS 2] "Беспроводная сеть" ругается на неправильную команду |
seriousstas
Не не так... вводи так netsh.exe wlan connect My ASUS 2 My ASUS "Беспроводная сеть" ---------------------------профиль-----имя---------------------------- если подключится к сети скину другой вариант с исправлением... |
Цитата:
теперь определило так [settings] interface=Беспроводная сеть ssid=My ASUS 2 profile=My ASUS 2 ping_addr1=8.8.8.8 ping_addr2=www.yandex.ru ping_timeout=5000 check_timeout=5000 debug=False messages=False fist_run=False |
netsh.exe wlan connect My ASUS 2 My ASUS "Беспроводная сеть"
так-же и netsh.exe wlan connect My ASUS 2 My ASUS 2 "Беспроводная сеть" Цитата:
|
seriousstas
Странно как то... вот смотри что у меня пишет когда подключаешь отключенную сеть... http://jpegshare.net/thumbs/46/d9/46...99b1926e95.jpg т.е. у меня так.. netsh.exe wlan connect DIR-777 DIR-777 "Беспроводная сеть" первый DIR-777 --- это профиль второй DIR-777 --- это ссид (имя сети) "Беспроводная сеть" --- это название интерфейса ... странно должно отрабатывать, утилита то одна и таже))) попробуй в ковычки профиль и имя сети поставить... netsh.exe wlan connect "My ASUS 2" "My ASUS 2" "Беспроводная сеть" |
Цитата:
|
seriousstas
Ну вот и за..бись, значит нужно кавычечки вкорячивать. Хорошо сейчас поправлю утилиту и скину новую версию. ---------------------------------------------------------------------------------------- Вот дополнил кавычками)) и по умолчанию изменил второй адрес(оба гугловские)... ping_addr1=8.8.8.8 ping_addr2=8.8.4.4 Пробуй :smile2: Скачать ... Видос как работает. ... |
Цитата:
А далее прошло все тесты ..! Было пару раз (иконка винды) - соединение-разрыв-соединения на протяжении секунды. Вобщем - хорошая работа! Спасибо , оч полезная штуковина ! Наш Киевстар недавно расщедрился на полный безлим 3G за 5$ в месяц + бонусы + можно сделать сим-пару и тд., что приятно удивило . Теперь катаюсь с видео-радио онлайн .. Цитата:
|
seriousstas
Цитата:
По идее должно работать нормально потому как скрипт по сути просто враппер/обертка для виндовой консольной утилиты netsh.exe. Но и скрипт тоже важен так как выступает в роли сетевого зонда. До меня сначала долго доходило))) почему пинг в автоит не отрабатывает, пока не прочитал внимательно справку))) Success: the roundtrip-time in milliseconds ( greater than 0 ). Failure: 0 if host is not pingable or other network errors occurred and sets the @error flag to non-zero. @error: 1 = Host is offline 2 = Host is unreachable 3 = Bad destination 4 = Other errors т.е. получается что почти при любом раскладе мы получаем >0 :smile1: а если читать внимательно))) то начинаешь понимать что все это хозяйство нужно правильно описывать, а не писать с дуру... If Not (Ping("www.pornhub.com", 250) Or Ping("www.redtube.com", 250)) Then... а потом удивляться почему не работает))) Цитата:
Рад что мои приблуды тебе помогают :smile2: Цитата:
Но радио пока редко слушаю и то в основном... http://jpegshare.net/thumbs/04/a9/04...997fbefd05.jpg Время не всегда есть, да и устаю что уже не до музыки и радио... быстрей домой и отдыхать))) |
Цитата:
Цитата:
Вот чего начал выдавать при последующих запусках Профайл в списке с двойкой , название в смарте My ASUS и подлючается если поправить : ssid=My ASUS profile=My ASUS 2 :rolleyes2: |
seriousstas
Цитата:
Утилита просто берет и записывает значения в ини файл. т.е. например: если у тебя был ssid=My ASUS ты делаешь перенастройку fist_run=true, утилита на старте берет из консоли ssid и перезаписывает значение ssid в ини файле. Можешь сам вручную проверить значения... Введи в ком. строке netsh.exe wlan show interfaces получишь такое вот сообщение... http://jpegshare.net/thumbs/12/c0/12...5ce74f5488.jpg Позже вечером выложу финальную версию :smile2: ... |
Цитата:
Повторить не получается ) Цитата:
|
seriousstas
Цитата:
Цитата:
|
Цитата:
Цитата:
|
Network Checker & WiFi Switcher
Небольшая утилита по образу и подобию "WiFi Монитора". Сделана для автоматического подключения при разрыве сетевого подключения. А так же включения wifi адаптера, если он был выключен. Работает при помощи виндовой консольной утилиты netsh.exe. http://jpegshare.net/images/04/a0/04...518c848bda.jpg При первом старте net_checker.exe, сетевое соединение должно быть активным!!! Т.е. wifi - адаптер должен быть включен, а необходимая сеть подключена. Это единоразовая настройка. Видос как работает. ---------------------------------------------------------------------------------------- При необходимости перенастройки параметров адаптера и сети, в ини файле заменить параметр fist_run=false на fist_run=true, затем включить адаптер, подключиться к сети и запустить net_checker.exe. Через несколько секунд после запуска появится таблица с настройками сети и адаптера. Таблицу нужно закрыть, она для наглядности заполнения параметров в ини файле. У утилиты есть настройки в ини файле... [settings] interface=Беспроводная сеть --- собственно сам wifi ssid=DIR-777 --- название сети profile=DIR-777 --- профиль подключения ping_addr1=8.8.8.8 --- первый адрес для пинга ping_addr2=8.8.4.4 --- второй адрес для пинга ping_timeout=5000 --- таймаут пинга check_timeout=5000 --- время цикла проверок debug=False --- режим отладки(запись в файл debug_log.txt событий) messages=False --- вкл.\выкл. сообщение о недоступной сети fist_run=False --- вкл.\выкл. режима первого старта утилиты tray_messages=false --- вкл.\выкл. сообщение о недоступной сети в трее ---------------------------------------------------------------------------------------- Ответы по возможным вопросам: - ping_addr1, ping_addr2 - пингует по двум адресам т.е. ping_addr1=8.8.8.8 и ping_addr2=8.8.4.4 - должны быть заполнены(выделено жирным). - ping_timeout - таймаут пинга - это время для ожидания ответа после запроса, меньше делать не советую(на скорость работы скрипта увеличенное время не влияет). - check_timeout - время цикла проверок - это время отработки цикла скрипта, уменьшать до мс.(например: 300) не советую, это не ускорит работу скрипта, но зато усилит нагрузку на систему и будут сыпаться ошибки подключения. - debug - режим отладки - в принципе почти бесполезен))) для пользователя, он больше был нужен мне. - messages - сообщение о недоступной сети - полезная штука, дает понять когда отвалилась сеть, если ненужно можно выключить(false), включить(true). - fist_run - первый старт - необходим для взятия параметров из системы, отрабатывает один раз. Повторное использование нужно только при перенастройке сетевых параметров.(выключить(false), включить(true).) И да чуть не забыл)), скрипт работает с иконками в трее, показывая состояние сети и адаптера. Их можно поменять на свои более информативные, переименовав свои иконки именами образцов в папке icons. Лежать они должны в папке icons рядом со скриптом. /---------------------------------------------------------------------------------------/ Перезалил архив 24.11.2017 13:14 - Убрал лишнее переподключение. (Теперь нет разрыва сетевого подключения. Только одно подключение при разрыве связи.) /---------------------------------------------------------------------------------------/ Перезалил архив 24.11.2017 5:00 утра - Исправил ошибку проверки адаптера /---------------------------------------------------------------------------------------/ Перезалил архив 24.11.2017 3:57 утра - Добавил проверку на выключенный адаптер и информационные сообщения. (информационные сообщения: "Подключаемся к сети:"; "Включаем WiFi адаптер..." для того чтобы было понятно какие действия происходят) /---------------------------------------------------------------------------------------/ Скачать ... |
Вложений: 1
duzzy
Мне кажется самый первый вариант , где проверялось именно соединение через _Wlan_QueryInterface ,а не пинг более правильный Код:
If _Wlan_QueryInterface() = "Connected" Then Я пару раз получал потерю интернета полностью .. На смарте есть , подключение есть,а на ПК инета нет .. Вероятно частое переподключение (а этого не избежать в движении) валит драйвер . Вылечивается перезапуском системы . Что кажет диагностика (скрин ниже) И еще - скажем я делаю запрос к какому-то адресу через Хром . Если есть потеря сигнала смартфоном, но соединение остается - будет ожидание , а если передернуть - страница не откроется, а напишет про отсутствие соединения : Цитата:
|
seriousstas
Цитата:
У меня пару дней работает и не валит, правда у меня 7-ка стоит, но я не думаю что это что то меняет. Если не нужно переподключение адаптера можешь в исходнике из цикла убрать wifi_enable_adapter() и тогда будет только подключение сети при разрыве соединения. Но тогда не будет вкл. адаптер... Могу попробовать проверку на выключенный сделать, но нужны тесты, потому как на одном компе может быть все хорошо а на другом не работать. Цитата:
А с дровами точно все порядке ? Я к чему это пишу, дома три компа и за несколько дней я их насиловал по черному))) Бесконечное выкл.вафли и отключение сети в разных вариациях(скрипт для это написал)))) + выдергивание адаптеров, и как ни странно дрова не валились все отрабатывало корректно, так же и раздачу гонял. .................................................. ................................... Вставил проверку на выключенный адаптер, пока работает как надо без переподключения адаптера. Сейчас перезалью архив с net_checker-ом, а завтра если время будет гляну на свежую голову native-wifi. |
Цитата:
встроен в моноблок , восмерка на него ставит свои .. Работали хорошо лет 5ть не переставлял 8-ку .. Цитата:
А вообще я знаю , как использовать Твой скрипт . Запускать по событию сна один раз(те без цикла) из планировщика с проверкой на пинг . Я так и делал , но через реконнект адаптера, а правильнее будет , как ты предложил через netsh.exe wlan connect Цитата:
|
seriousstas
Перезалил еще раз)) Убрал лишний коннект сети, теперь работает как часы ;) Цитата:
Цитата:
На нескольких компах в адовом режиме пробовал как я и писал выше, все прекрасно работает... не было ни падений не синих экранов не отвала дров. Можно использовать вообще голые команды в планировщике по событиям, тоже будет работать. Но суть этого скрипта в автоматизации процесса переподключения сети и включении адаптера если он был выключен. Цитата:
Работает он очень хреново, поясню, при использовании... _Wlan_QueryInterface() - происходит реконнект т.е. разрыв соединения и подключение(это основная функция по запросу подключения)... _Wlan_Connect() - не возвращает ничего т.е. не понятно подключился ты или нет... Тут пока все очевидно :) Плюс ко всему посидел и подумал насчет вопроса проверки подключения, и могу сказать однозначно что проверка пингом лучший вариант так как это сквозная проверка мы проверяем наличие интернета а не сетевого подключения. Да я думаю ты и сам с эти сталкивался когда показывает что сеть есть а в инет выйти не можешь. Другой вопрос что нужно правильно настроить, потому как машина двигается и уровень сигнала всегда разный нужно просто увеличить время ожидания ответа по пингу(в скрипте net_checker уже стоит увеличенное значение 5000 мс. по дефолту 4000 мс.). Если ставить маленькое значение будут проблемы из разного уровня сигнала. Ну а вообще пинг отрабатывает почти моментально. Можно посмотреть время ответа если включить debug(отладку)... ping_1=21 ping_2=30 ping_1=20 ping_2=20 ping_1=32 ping_2=23 ping_1=19 ping_2=20 ping_1=19 ping_2=21 ping_1=17 ping_2=20 ping_1=18 ping_2=20 ping_1=66 ping_2=20 ping_1=19 ping_2=23 ping_1=19 ping_2=20 Время ответа от гугло серваков ;) |
Цитата:
Смотрю к названию профайла иногда двойка добавляется + удобно если несколько источников . Цитата:
Думаю связано с AC типом подключения ... Цитата:
|
seriousstas
Цитата:
Цитата:
И получается что при использовании пинга ты знаешь что инет есть и в случае отвала будет подключение к сети и проверка на подключенный адаптер, а при использовании проверки на подключено или нет ты будешь получать ответ о наличии подключения и нужно полагаться на систему проверяла она наличие инета или нет... :) ------------------------------------------------------------------------------------ Писец а что за умник убрал редактирование постов ???? Теперь первый пост не отредактировать.... |
Цитата:
|
seriousstas
Нововводители мля))) И чего теперь мне все свои посты в подпись пихать.......... на кой хрен трогать то что работает... не пойму :wacko2: Ты хотел проверку ;) Вот держи... PHP код:
... |
duzzy
Цитата:
Догда не подойдет , тк при обычной загрузке системы или из сна сети еще нет .. |
seriousstas
Цитата:
Проверки сделаны для работающего компа. Как оно будет при сне и гибернации я не знаю, эти режимы не использую. Поэтому проще описать то что нужно делать а я попробую что-то написать или помочь что-то переделать :) Если брать net_checker, это работает так... включили комп ...пропускаем этап с инициализацией и т.д., пришли к загрузке дров, грузим дрова, загрузили драйвер вафли, включили вафлю, если есть системное авто-подключение подключаемся к сети если она есть в наличии - все. Загружаем(по кнопке или автоматом или по событию) net_checker проверяет наличие инета и если его нет подключается к сети из ини. Вариации по использованию могут быть разными, в данном случае происходит обычная проверка на наличие инета. ... |
Цитата:
Вериантов может быть несколько (нужна универсальность) : 1 Обычная загрузка ПК 2 Выход из сна 3 Просто отошел от авто ..(в этом случае все ОК , тк уже было подключение..) net_checker с проверкой пинга не подошел , тк мне не нужны реконекты в движении после подлкючения . Цитата:
После сна и гибернации или обычной загрузки сети нет . Включаю (автоматом) раздачу из смарта , далее If($state_check == 'отключено') условие не работает , тк еще нет профайла в виндовом списке . Получается не хватает простого сканирования сетей в списке каждый раз в цикле перед проверкой ? Это и просходит при нажатии лесенки (скан и подключение) , те открытии списка сетей в Win 8.1, но как это повторить командой .. |
seriousstas
Цитата:
Скинь мне пожалуйста функционал по отслеживанию событий - уход в сон и т.д. |
Цитата:
но я не совсем понимаю зачем ?(я ушел от этого ..) скрипт-монитор(чекер), что после сна ,что после загрузки запущен и работает , нужно лишь отсканить сеть и подключиться .. Второе умеем , а первое не знаю.. |
seriousstas
А ну тогда еще проще))) Будет постоянный скан в цикле на нужную сеть, а затем уже действия. Завтра скину на пробу;) За скрипт спасибо, я просто режимы еще не смотрел вообще. --------------------------------------------------------------------------------------------- Все вроде как надо, но есть одна маленькая какашка))) Если стартовать скрипт на выключенном адаптере, он не может получать список сетей))) Но зато если на включенном адаптере работает все что нужно... и скан сетей и включение адаптера и подключение к сети. Т.е. теряешь сеть скрипт болтается в цикле... сеть появилась скрипт подключает к ней вафлю. |
Цитата:
Цитата:
|
seriousstas
Цитата:
Не понимаю почему но название сети не получает... Но я придумал как это пока обойти))) Цитата:
Это тестовый вариант, но он полнофункциональный :) Работает так... Два скрипта, один как раз сам чекер а второй это обход пустой сети при выключенном адаптере. - net_checker_v2.exe --- сам чекер - wifi_adapter_check.exe --- включает адаптер а затем запускает чекер Нужно один раз запустить net_checker_v2 для получения названия адаптера и имя сети, затем можно пользоваться как обычно. Т.е. wifi_adapter_check.exe --- это вспомогательный скрипт который будет пытаться включить адаптер и как только он его включит то запустит net_checker_v2 для других проверок. Т.е. после первой настройки запускать нужно wifi_adapter_check.exe. Ну и добавил болталку)))... можешь тоже проверить sound_messages=true :big: ... |
Часовой пояс GMT +4, время: 08:55. |
Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot