![]() Szybkie szukanie |
Skrypt windowsowy podtrzymujący połączenie Aero2 przed usypianiem
|
09-09-2015, 04:27
(Ten post był ostatnio modyfikowany: 26-09-2015 04:30 przez tomaszmister.)
Post: #1
|
|||
|
|||
Skrypt windowsowy podtrzymujący połączenie Aero2 przed usypianiem
UPDATE 26-09-2015:
W jednym z kolejnych wpisów poniżej dodałem nowszą wersję skryptu, zawierająca drobne usprawnienia: skrypt podtrzymujący połączenie Aero2.zip Nie wprowadza ona jednak żadnych zmian w głównej części skryptu, dlatego osoby, dla których pierwsza wersja skryptu zamieszczona w tym wpisie okazała się przydatna, absolutnie nie muszą martwić się pobieraniem nowszej wersji i ponownym edytowaniem jej ustawień. Natomiast osoby, które jeszcze zechcą wypróbować skrypt, zapraszam do pobrania właśnie tej nowszej wersji! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Pozwoliłem sobie założyć nowy wątek, aby podzielić się skryptem pomagającym rozwiązać, albo w możliwie dużym stopniu załagodzić problem "usypiania połączenia Aero2", jaki pojawił się od około czerwca 2015 r. Jest to problem polegający na nagłym zamieraniu ruchu w poprawnie nawiązanym połączeniu, wymagający jego zrestartowania, aby odzyskać sprawnie działające połączenie, co w praktyce ogromnie przeszkadza w korzystaniu z Aero2. Problem ten został zaobserwowany i opisany przez wielu użytkowników na forum oraz przez Jakuba m.in. w dwóch poniższych artykułach: http://jdtech.pl/2015/09/aero2-uzytkowni...orzej.html http://jdtech.pl/2015/07/problemy-z-szyb...-2015.html Przydatnym sposobem zapobiegania takiemu "usypianiu" połączenia Aero2 jest ciągłe utrzymywanie ruchu w połączeniu poprzez wysyłanie zapytań ping (metodę tą poznałem właśnie na forum jdtech oraz w komentarzach pod artykułami na blogu). Sposób ten sumarycznie generuje bardzo niewielkie zużycie transferu danych, rzędu kilku MB na godzinną sesję połączenia, dzięki czemu połączenie Aero2 nie będzie niepotrzebnie obciążone. Jednak "ręczne nastawianie" polecenia ping również stałoby się bardzo niewygodne, tym bardziej że po każdym rozłączeniu sesji przez kod captcha konieczne byłoby ponowne wznowienie polecenia ping, najlepiej ze zmienionym adresem, gdyż adres badany przez ping po przejściu w tryb captcha staje się na pewien czas "spalony" i trzeba go wymienić (o takim dziwnym zachowaniu ping w sieci Aero2 dowiedziałem się również z jednego z artykułów Jakuba). Co gorsze jednak, wysyłanie zapytań ping, choć w dużym stopniu pomaga, jednak (chyba także niezależnie od rozmiaru przesyłanego pakietu, jak zauważył to jeden z użytkowników w komentarzach na blogu) nie chroni na 100% przed spadnięciem połączenia w stan uśpienia. Dlatego aby rozwiązać te niedogodności przygotowałem skrypt windowsowy, który za pomocą powtarzanych zapytań ping stara się podtrzymać połączenie Aero2 przed usypianiem, a ponadto jeśli już dojdzie do uśpienia połączenia, wówczas skrypt wykryje to i sam zrestartuje połączenie. Skrypt ponadto potrafi rozpoznać przejście w tryb wpisywania captchy, aby odróżnić ten tryb od przejścia w stan uśpienia, dzięki czemu w trakcie wpisywania kodu captchy skrypt nie dokona niepotrzebnego restartowania połączenia. Cały skrypt, zawierający także obszerne komentarze, umieściłem w skompresowanym katalogu w załączniku: ![]() Po rozpakowaniu załącznika, oprócz skryptu (będzie to plik skrypt podtrzymujący połączenie Aero2.cmd) będzie w nim znajdować się jeszcze drugi plik: PortQry.exe Jest to niewielkie dodatkowe narzędzie Microsoftu, działające w wierszu poleceń, bezpłatnie udostępnione pod adresem: https://www.microsoft.com/en-us/download...x?id=17148 Z jego pomocą skrypt wykrywa tryb wpisywania captcha (gdyż sam ping niestety nie mógłby posłużyć w tym celu). Po rozpakowaniu załącznika katalog zawierający obydwa pliki można umieścić w dowolnym miejscu. Następnie warto jest utworzyć skrót do skryptu, gdyż wtedy we właściwościach skrótu dostępna będzie opcja umożliwiająca uruchomienie okienka skryptu w postaci zminimalizowanej. Tak przygotowany skrót można już wygodnie dodać do katalogu "Autostart". Przed rozpoczęciem korzystania ze skryptu należy otworzyć go za pomocą edytora tekstowego (takiego jak tradycyjny windowsowy Notatnik, choć wspaniale do edycji plików skryptów oraz wszelkich podobnych nadaje się darmowy program Notepad++, który ogromnie ułatwia czytanie takich plików poprzez kolorowanie ich składni). W początkowej części skryptu znajdują się ustawienia, które można dostosować (są one bardzo szczegółowo opisane za pomocą komentarzy). Najważniejsze jest pierwsze ustawienie, w którym należy podać nazwę połączenia Aero2, pod jaką zostało ono skonfigurowane w systemie. Następnie istotne może okazać się drugie ustawienie, wskazujące czy skrypt powinien automatycznie nawiązywać połączenie po tym, gdy dokona jego rozłączenia (stanie się tak w sytuacji wykrycia połączenia uśpionego). Domyślnie skrypt ma tą opcję załączoną, a więc sam nawiąże połączenie w razie jego restartowania przy stanie uśpienia połączenia. Takie ustawienie sprawdzi się najczęściej dla użytkowników Windows XP, Vista i 7, a dokładniej mówiąc dla tych użytkowników, którzy nie korzystają z dodatkowego programu w celu automatycznego wybierania połączenia Aero2 (gdyż w tych systemach w ustawieniach połączenia istenie opcja automatycznego wznowienia połączenia po rozłączeniu i zapewne większość użytkowników korzysta właśnie z takiej konfiguracji). Jeśli natomiast do automatycznego włączania połączenia Aero2 wykorzystywany jest dodatkowy program, np. program Aero3 z zaznaczoną opcją "Zawsze łącz Aero2", wówczas warto jest tą opcję w skrypcie wyłączyć, gdyż w przeciwnym wypadku automatyczne wznawianie połączenia przez skrypt będzie "gryzło się" z tą samą funkcją wykonywaną przez zewnętrzny program. A więc wyłączenie tej opcji sprawdzi się najczęściej dla użytkowników Windows 8 i zapewne również 10, gdyż w tych systemach nie ma już opcji automatycznego wznawiania połączenia w jego systemowej konfiguracji, dlatego trzeba w nich stosować funkcję wybierania połączenia pochodzącą z dodatkowych programów, np. w doskonałym programie Sebusa Aero3. Dziś w dzień postaram się opisać jeszcze dokładniej działanie skryptu i podać szczegóły techniczne. Natomiast w samym skrypcie zawarte są bardzo dokładne komentarze, także one również powinny pomóc w razie wszelkich problemów. Na pewno tylko jeszcze jedną ważną uwagą jest to, że skrypt przystosowany jest do działania z połączeniami RAS. Dokładniej chodzi tutaj o używane przez skrypt polecenie rasdial, za pomocą którego wykonywane jest rozłączanie i łączenie w przypadku konieczności restartu w razie wykrycia stanu uśpienia połączenia. Gdyby można było to polecenie zastąpić poleceniem odpowiednim dla połączeń NDIS, lub poleceniem sterującym routerem z podłączonym do niego modemem, wówczas skrypt powinien zadziałać również dla takich konfiguracji, niestety nie mam możliwości przetestowania takich konfiguracji, dlatego w skrypcie ograniczyłem się do zastosowania polecenia rasdial. Mam nadzieję, że skrypt ten pomoże choć trochę załagodzić ten fatalny problem jaki dotknął wielu użytkowników Aero2 i uczyni korzystanie z niego zdecydowanie bardziej znośnym! Choć najlepiej byłoby, jeśli problem ten zostałby naprawiony u źródła w Aero2 :-) Pozdrawiam wszystkich czytelników jdtech! |
|||
![]() elector (2015-09-16), K4r0lSz (2015-09-09) |
« Starszy wątek | Nowszy wątek »
|
Podobne wątki | |||||
Wątek: | Autor | Odpowiedzi: | Wyświetleń: | Ostatni post | |
Aplikacja Aero2 Captcha dla Nokia OS ? | tran | 3 | 9 578 |
14-03-2016 17:10 Ostatni post: tran |
|
programy do Aero2, współpracujące z TL-MR3420 v2 - stan na wrzesień 2015 | egri | 6 | 9 237 |
28-09-2015 17:49 Ostatni post: penknife |
|
Problemy z dodatkowymi kodami CAPTCHA podczas korzystania z Aero2 | Krystyna z gazowni | 9 | 13 184 |
20-04-2015 13:59 Ostatni post: jakubd |
|
Czy jest odpowiednik Asystenta Aero2 na Androida dla Windowsa 7 | mikołaj | 10 | 28 687 |
02-12-2014 01:33 Ostatni post: _mario_ |
|
Zrestartuj połączenie internetowe... czyli co mam zrobic konkretnie? | neoxxx | 6 | 7 058 |
24-09-2014 23:57 Ostatni post: jakubd |