![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
есть программка, где надо постонно проверять наличие интернета. делаю очень просто - через WebRequest посылаю запрос на нужный сайт. Коли ответ есть - значит и интернет есть. Код:
вот. всё вроде убийственно просто и должно работать. но по непонятным причинам в одном месте с вифи интернетом оно даёт сбой и возвращает периодически false. из-за этого отменяется синхронизация БД и файлов программы с сервером. Что самое обидное - у меня такое впечатление, что он просто не ждёт Timeout и просто не успевает получить ответ. Ставил таймаут и на 40 секунд - никакой разницы. Доки читал - вроде написано что таймаут работает только если запрос синзронный - GetResponse вроде именно синхронная функция. Так вот собственно что надо - или заставить нормально работать таймаут у запроса, или сделать как-нибудь по-другому. Предложения? Идеи? |
|||
|
||||
Kvazilol |
|
|||
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 7.12.2006 Репутация: нет Всего: нет |
http://www.codeproject.com/cs/internet/int...tion_status.asp
вроде оно?
|
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
а какая собственно принципиальная разница между моим кодом и тем что привёл ты? (я в танке)
|
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: нет Всего: 56 |
Я так понял тебе инет нужен для синхронизации БД с сервером?
Ну так а что за сервер? ТЫ от него посылки тоже через ВебРеспонс получаешь? или как то подругому, так и проверяй наличия соединения с сервером по другому. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
v2v, инет нужен НЕ ТОЛЬКО для синхронизации БД. проверка должна в принципе подтверждать что сайт www.company_site.com отвечает. Всё. Проблема в том, что таймаут почему-то не пашет.
я вообще не понимаю в чём суть твоего поста - я про фому, ты про ерёму. что значит проверять по другому? ну напиши как. и какая разница какой сервер? я же говорю - надо проверять есть интернет или нет. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
false оно может вернуть если произошло исключение. закрадывается вопрос: а что за исключение на том компе происходит?
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
гм... забыл совсем... мне в общем к терминалу надо съездить и в логе глянуть для полной уверенности. как только так сразу отпишусь.
|
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
отпишись, мне уже самому интересно
![]() -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
вот сижу у терминала.
исключение: System.Net.WebException: The remote server returned an error: (404) Not Found. at System.Net.HttpWebRequest.GetResponse() at ERD.AdminForm.IsConnectionAvailable(String URL) in xxx:line yyy скажу так - очень странно это. ибо урл всё время один и тот же. оно постоянно в онлайне. это раз. два. такая проблема только на одном терминале (интернет - вифишка - как и везде). работает инет отрадно, но, видно, что-то невпорядке. спешу заметить - сайт в оффлайн не уходит и уходить не собирается. а теперь вопрос - мысли и соображения по этому поводу? единственное, что приходит в голову - посылать запрос не один раз, а несколько. хотя, коненчно, очень странное решение (как и сама проблема). есть ли что-нибудь покрасивее (в плане выхода из этой ситуёвины)? |
|||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 6 Всего: 170 |
-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
мистика. прокси может какой затесался? модификации LSP?
кстати, была когда-то давно схожая задача, и ввиду того, что интернет не надёжная система, я наличие интернета проверял по нескольким урлам последовательно. может и тебе использовать пару-тройку урлов.. -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
tol05, эмм... а в чём, собственно, фишка? я может не понял - а что там смотреть? Там (почти) точно также использован WebRequest. И написан класс MyWebRequest для обхода синхронности GetResponse. Или я чего-то там не углядел?..
cully, странно то именно то, что 404 возвращается абсолютно хаотично - такое впечатление, то функция содержит только return rand()%2 ![]() В общем, пока помечаю вопрос решённым. Проблема ясна. Обязательно отпишусь. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
Kefir, из IE пробовал этот урл долбить с такой же периодичностью?
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: нет Всего: 87 |
нет, не пробовал.
в общем после внедрения технологии множественного запроса (на три разных урла) всё стало работать нормально. проверяет хорошо. пока сбоев не замечено. |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |