проверка интернета

1. ZZZ 84 12.09.12 12:28 Сейчас в теме
Как посредством кода во внешней обработке понять имеется ли подключение к интернету у пользователя или нет??
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. logos 208 12.09.12 12:30 Сейчас в теме
Проблема в том, что считать наличием интернета. Вот если шлюз провайдера пингуется, это инет? А если машинка за прокси, пинг не работает, но странички открываются, это инет?
3. dour-dead 271 12.09.12 12:32 Сейчас в теме
по пытайтесь создать соединение до нужного сайта. И будет видно есть ли Интернет.
4. dour-dead 271 12.09.12 12:35 Сейчас в теме
Пример из типовой конфиги:

// инициализируем настройки прокси, если они определены
НастройкиПрокси = ПолучитьНастройкиПрокси();
Если
ЗначениеЗаполнено(НастройкиПрокси.ИмяПользователя) Тогда
Прокси = Новый ИнтернетПрокси;
Прокси.Пользователь = НастройкиПрокси.ИмяПользователя;
Прокси.Пароль = НастройкиПрокси.Пароль;
Иначе
Прокси = Неопределено;
КонецЕсли;

// устанавливаем соединение с сервером
Попытка
Соединение = Новый HTTPСоединение(АдресСервераОнлайнПроверки, , , , Прокси);
Исключение
Сообщить("Не удалось установить соединение с сервером онлайн-проверки:" + Символы.ПС + ИнформацияОбОшибке().Описание, СтатусСообщения.Важное);
Возврат Неопределено;
КонецПопытки;
matveev.andrey.v; ya.Avoronov; +2 Ответить
6. mailrum2004 1 11.12.17 14:19 Сейчас в теме
Возникала аналогичная задача. Код в (4) мне не помог, т.к. при отсутствии доступа к ресурсу он ничего не сообщал (HTTPСоединение исключение не вызывало). Помог следующий код взятый здесь https://its.1c.ru/db/metod8dev#content:5574:hdoc:
	АдресСервераОнлайнПроверки = "http://yandex.st/jquery/1.6.4/jquery.min.js"; 
	ЕстьИнтернетСоединение = ложь;
	СтруктураURI = СтруктураURI(АдресСервераОнлайнПроверки); 	
	HTTPСоединение = Новый HTTPСоединение(СтруктураURI.Хост, СтруктураURI.Порт); 
	 
	HTTPЗапрос = Новый HTTPЗапрос(СтруктураURI.ПутьНаСервере); 
	Попытка
		Результат =  HTTPСоединение.Получить(HTTPЗапрос);
		ЕстьИнтернетСоединение = Истина;
	Исключение
		//Сообщить(ОписаниеОшибки());
		Сообщить("Проблема подключения к интернету...");
	КонецПопытки;


 Функция СтруктураURI(Знач СтрокаURI) Экспорт
	
	СтрокаURI = СокрЛП(СтрокаURI);
	
	// схема
	Схема = "";
	Позиция = Найти(СтрокаURI, "://");
	Если Позиция > 0 Тогда
		Схема = НРег(Лев(СтрокаURI, Позиция - 1));
		СтрокаURI = Сред(СтрокаURI, Позиция + 3);
	КонецЕсли;

	// строка соединения и путь на сервере
	СтрокаСоединения = СтрокаURI;
	ПутьНаСервере = "";
	Позиция = Найти(СтрокаСоединения, "/");
	Если Позиция > 0 Тогда
		ПутьНаСервере = Сред(СтрокаСоединения, Позиция + 1);
		СтрокаСоединения = Лев(СтрокаСоединения, Позиция - 1);
	КонецЕсли;
		
	// информация пользователя и имя сервера
	СтрокаАвторизации = "";
	ИмяСервера = СтрокаСоединения;
	Позиция = Найти(СтрокаСоединения, "@");
	Если Позиция > 0 Тогда
		СтрокаАвторизации = Лев(СтрокаСоединения, Позиция - 1);
		ИмяСервера = Сред(СтрокаСоединения, Позиция + 1);
	КонецЕсли;
	
	// логин и пароль
	Логин = СтрокаАвторизации;
	Пароль = "";
	Позиция = Найти(СтрокаАвторизации, ":");
	Если Позиция > 0 Тогда
		Логин = Лев(СтрокаАвторизации, Позиция - 1);
		Пароль = Сред(СтрокаАвторизации, Позиция + 1);
	КонецЕсли;
	
	// хост и порт
	Хост = ИмяСервера;
	Порт = "";
	Позиция = Найти(ИмяСервера, ":");
	Если Позиция > 0 Тогда
		Хост = Лев(ИмяСервера, Позиция - 1);
		Порт = Сред(ИмяСервера, Позиция + 1);
	КонецЕсли;
	
	Результат = Новый Структура;
	Результат.Вставить("Схема", Схема);
	Результат.Вставить("Логин", Логин);
	Результат.Вставить("Пароль", Пароль);
	Результат.Вставить("ИмяСервера", ИмяСервера);
	Результат.Вставить("Хост", Хост);
	Результат.Вставить("Порт", ?(Порт <> "", Число(Порт), Неопределено));
	Результат.Вставить("ПутьНаСервере", ПутьНаСервере);
	
	Возврат Результат;
	
КонецФункции

Показать
5. пользователь 16.09.12 20:08
Сообщение было скрыто модератором.
...
Оставьте свое сообщение
Вакансии
Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день