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

Вниз

E-mail   Найти похожие ветки 

 
Groove_ ©   (2002-12-12 16:05) [0]

Люди, программисты, кодеры, и все остальные HELP!!!
Нужно срочно узнать в Online комп или нет, если да, то может ли он отправить почту... HELP HELP HELP!!!


 
Song ©   (2002-12-12 16:28) [1]

В FAQ есть способы, но 100% нет способа.


 
Maksss   (2002-12-12 16:48) [2]

Пинговать microsoft.com


 
SemFLY ©   (2002-12-13 02:36) [3]

Вот пример,

const

...........

INTERNET_CONNECTION_MODEM = 1;
INTERNET_CONNECTION_LAN = 2;
INTERNET_CONNECTION_PROXY = 4;
INTERNET_CONNECTION_MODEM_BUSY = 8;
const winetdll = "wininet.dll";

function InternetGetConnectedState(lpdwFlags: LPDWORD; dwReserved:DWORD):
BOOL; stdcall; external winetdll name "InternetGetConnectedState";

implementation

// Проверяем соединение с интернетом

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

...........

-------

далее ....
----------
if InternetGetConnectedState(@dwConnectionTypes,0) then
begin
If (dwConnectionTypes and INTERNET_CONNECTION_MODEM) = 1 then
begin
// тут твои действия, если есть коннект...
end;

end;
end;






 
Ihor Osov'yak ©   (2002-12-13 03:04) [4]

http://delphi.mastak.com/cgi-bin/forum.pl?look=1&id=1039624919&n=2

Обратите вниманее на постинг вашего покорного слуги. Несколько более детализировано Maksss (12.12.02 16:48),SemFLY © (13.12.02 02:36)


 
SemFLY ©   (2002-12-13 03:35) [5]

Ihor Osov"yak, если ты имеешь ввиду, что я у тя содрал пример и сунул сюда, то ты ошибаешься...


 
Ihor Osov'yak ©   (2002-12-13 12:21) [6]

2 SemFLY © (13.12.02 03:35)

Нет, не имею ввиду... В каждом модуле есть begin end, а также вполне вероятно, что юзаются примерно одинаковые апишные вызовы, особеннно если решаются похожие задачи ... И вполне вероятно, что в пределах 10-15 строчек код, написанный независимо, будет 1 к одному ...

Зы. Если Вас очень интересует, откуда этот коду меня - я уже не помню, писал его сам, или выдернул с какой-то конференции, и если выдернул - то не помню, подвергал ли его модернизации. Хотя учитывая стиль имен и ссылку на W2k ddk - вероятнее всего, я его как минимум комбинировал из нескольких чужих фрагментов с некоторой отсебятиной ...

Не помню, ибо кода я пишу много и довольно часто пользуюсь поиском по тому же гуглю с целью поиска готовых решений. Если юзается чужая идея, или код по интилекту немного больше чем begin end, то конечно, я сохраняю ссылку на первоисточник... Но имхо, приведенный фрагмент можно расценивать по уровню ноу-хау почти еквивалантом пустого блока begin end; :-).

Зы - а в своем первом постинге я всего лишь претендовал на более детальное расписывание Вашего варианта решения ...
Зы2. Не подозревайте, что другие подозревают Вас... И жызнь станет лучше ...



 
SemFLY ©   (2002-12-13 14:40) [7]

Ihor Osov"yak, всё оки :))


 
SemFLY ©   (2002-12-13 14:45) [8]

Ihor Osov"yak, хотел у тебя спросить...
Используя
function InternetGetConnectedState(lpdwFlags: LPDWORD; dwReserved:DWORD):
BOOL; stdcall; external winetdll name "InternetGetConnectedState";


У тебя всегда она определяет момент разъединения с интернетом, у меня это происходит иногда, через раз, иногда определит(подряд если производить connect/disconnect/connect... и т.д.) на раз 3-ий - 4-ый она уже не определят, что соединение было разорвано :(
Момент соединения она определят всегда 100%, а вот разъединения не всегда :(


 
Ihor Osov'yak ©   (2002-12-14 00:35) [9]

не скажу. Я работал с InternetGetConnectedStateEx, и то только в одном проекте, делался под заказ для конкретного заказчика. Гоняет уже с полгода, периодически делаю ему мелкие апдейты, но он ни разу не приставал с тем, что неверно определяется факт подключения к инету...

Зы, по моим прикидкам функция юзается несколько раз в час в паре disconnect/connect, само изделие в штатном режиме работает практически круглосуточно (заказчик несколько раз прысылал лог-файлы, там видно было что программа порой не останавливалась по несколько дней).


 
SemFLY ©   (2002-12-14 03:28) [10]


> (заказчик несколько раз прысылал лог-файлы, там видно было
> что программа порой не останавливалась по несколько дней).

т.е. ты хочешь сказать, что функция InternetGetConnectedStateEx всегда определяла момент разъединения с интернетом...


 
Ihor Osov'yak ©   (2002-12-14 11:24) [11]

2 SemFLY © (14.12.02 03:28)

нет, я так не говорил. Я сказал, что использовал InternetGetConnectedStateEx, а не InternetGetConnectedState.
Причем я ее использовал на предмет выяснения того, если ли коннект к инету в определенный момент времени (для чего она и предназначена), а в случае положительного ответа еще делал попытку соединения с очччень далеким сервером, см. как вариант Maksss (12.12.02 16:48)...

Имхо, эта функция не предназначена для ловли момента обрыва/отключения от инета...


 
Ihor Osov'yak ©   (2002-12-14 11:31) [12]

по поводу определения момента разьединения -

http://v-programs.narod.ru/rasapi.html
http://v-programs.narod.ru/tvdial.html
http://v-programs.narod.ru/progr.html

там кажется есть решение этой задачи. Насколько качественное - не могу судить, детально не смотрел... Но звонилку/учетчик времени соединения этого человека юзаю уже два года без особых нареканий


 
Набережных С.   (2002-12-14 13:54) [13]

RasConnectionNotification



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

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

Наверх




Память: 0.5 MB
Время: 0.016 c
6-15795
dkDimon
2002-12-14 15:14
2003.02.06
Док по SMTP


14-15869
Alex
2003-01-19 13:03
2003.02.06
TabSet


1-15602
Jaxtor
2003-01-29 10:44
2003.02.06
ComboBox и Button


14-15930
Шоломицкий
2003-01-21 19:41
2003.02.06
Есть тут программеры из Microsoft?


14-15909
Fishka
2003-01-20 12:18
2003.02.06
Windows XP и QuickReport - ошибка