Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.11;
Скачать: CL | DM;

Вниз

Проблема с функцие определения подключения к интернету   Найти похожие ветки 

 
Windows ©   (2005-08-26 10:19) [0]

Вообщем, есть функа

function IsConnectedToInternet: Boolean;
var
  dwConnectionTypes: DWORD;
begin
  dwConnectionTypes :=
    INTERNET_CONNECTION_MODEM +
    INTERNET_CONNECTION_LAN +
    INTERNET_CONNECTION_PROXY;
  Result := InternetGetConnectedState(@dwConnectionTypes, 0);
end;

Она определяет наличие подключение к интернету.
Следующие параметры определяют определенное подключение.
INTERNET_CONNECTION_MODEM   -   Использование модема.
INTERNET_CONNECTION_LAN     -   Использование Локал сети.
INTERNET_CONNECTION_PROXY   -   Использование интернета через прокси.

Значит, мне, нужно чтобы функция, определяла, только подключение к интернету, а не подключение по локальной сети.

Но отсюда проблема.
 Сейчас есть Спутниковый интернет, интернет через кабель(скоростной), так же через мобильник.

Как из это функции сделать так, чтобы она определяла есть ли подключение к интернету. Но так, чтобы она молчала, если есть связь с локальной сетью. Как это сделать?


 
Windows ©   (2005-08-26 13:12) [1]

Не, ну хоть бы кто нить посмотрел!


 
Antonn ©   (2005-08-26 13:53) [2]

соединение через удаленное соединение?


 
Digitman ©   (2005-08-26 14:04) [3]


> Как из это функции сделать так, чтобы она определяла есть
> ли подключение к интернету


никак.

"подключение к интернету" - это нонсенс, чушь.

подключиться можно лишь к другому компьютеру или хабу.

а интеренет - это не хаб и не компьютер, это глобальная сеть локальных сетей.

какждая лок.сеть, в свою очередь, состоит из компьютеров

когда ты "подключаешься к интернет", ты подключаешься всего лишь к одному из компьютеров сети того или иного интернет-провайдера (способы ты перечислил - модемное соединение , высокоскоростные кабельные линии, спутниковый канал и пр.)

интернет-провайдер же волен маршрутизировать твои запросы к различным хостам за пределами его, провайдера, сети, а волен и отвергать любые из этих запросов по тем или иным причинам .. в последнем случае нет повода говорить о "подключении к интернету" (ибо ни один хост за пределами сети провайдера тебе не доступен), хотя InternetGetConnectedState() возвратит для данного соединения TRUE.

Вот и подумай, нужна ли такая ф-ция ..


 
Windows ©   (2005-08-26 16:09) [4]

Тогда, я вынужден попросить, функцию, которая проверяла бы указанный ЮРЛ, и возвраща ТРУ, если ЮРЛ найден, таким способом можно решить мою проблему, я думаю...


 
Digitman ©   (2005-08-26 16:20) [5]


> проверяла бы указанный ЮРЛ


проверить URL на доступность нельзя.

можно проверить лишь доступность хоста, имя или адрес которого фигурирует в URL

для этого существует ICMP-протокол

см. ф-ции IcmpCreateFile, IcmpSendEcho


 
Критик   (2005-09-01 20:56) [6]

Хорошая идея проверки наличия подключения к Интернет- просто организовать пингование известного сайта, например mail.ru


 
DeathLess   (2005-09-02 05:23) [7]

InternetCheckConnection("yandex.ru",1,0)

Функция из WinInet.dll пингует указаный адрес



Страницы: 1 вся ветка

Текущий архив: 2005.12.11;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.04 c
14-1132584149
manulo
2005-11-21 17:42
2005.12.11
LPT


3-1129972925
mnm
2005-10-22 13:22
2005.12.11
Стоит ли использовать Access?


3-1129111866
DancerMan
2005-10-12 14:11
2005.12.11
TWebBrowser или ...?


2-1132850358
Бандерас
2005-11-24 19:39
2005.12.11
Как завершить обращение к приложению?


14-1132683240
QuasiLamo
2005-11-22 21:14
2005.12.11
delphimaster.ru + IRC





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский