Jak wykryć moment rozłączania z siecią?

0

Jak wykryć moment rozłączania z siecią i ewentualnie uniemozliwic rozłączenie lub poprzedzić rozłączenie jakąś czynnością (np. wysłaniem maila?)
...nigdzie nie moglem tego znalezc :|

0

Moim zdaniem nie da się, w końcu nie jesteś w stanie zatrzymać rozłączenia spowodowanego zewnętrznym czynnikiem... - nie zdążysz zrobić nic.

0

McAron.... A co dialera piszesz??? lub cos z tego syfu ?? nieladnie ;-p
I nie znalazles w sieci......... jaka szkoda..... poczytaj o RAS albo TAPI

0

nie wiem, czy sie da zapobiec rozłączeniu.

Ale funkjcę sprawdzającą, czy jest połączenie masz w FAQ, tylko
w timerze sprawdzasz, czy jest polaczenie, czy nie

0

Żadnego dialer'a nie pisze ;-) raczej cos w rodzaju komunikatora internetowego :-)
...wiec sie nie da :|
hmm niedobrze, nie da sie przechwycic ciagu jakichs komunikatow i albo je przepuscic albo wykonac jaks czynnosc i potem puscic
[niewinnosc] niech mi tylkok ktos powie jakich komunikatow... :p

0

Jakich komunikatów ? Nie sądze że w chwili wyciągnięcia wtyczki zdążysz wysłać jakiś komunikat :-)

0

Wysyłaj pakiety kontrolne (PING). Jeżeli np. po 1 minucie nie zostanie wysłany PONG odpinaj kolesia od serwera.

0

OK ...a jak wykryć moment, gdy ja rozłączam się z netem, bo chyba raczej o to mi chodziło :-)

0

Moze powiem tak : jest w faq taki opis

//-----------------------------
Problem: Jak sprawdzić, czy użytkownik jest w Internecie?
Autor: Adam Boduch
Data napisania: 2002-10-02 1617
Odsłon: 177
Dodaj komentarz


Ta funkcja nie wszystkim działa więc....

W sekcji "Interface" dodaj nagłówek:

function InetIsOffline(Flag: Integer): Boolean; stdcall;
external 'URL.DLL';

Teraz w procedurze:

if InetIsOffline(0) then
ShowMessage('Jestem offline') else
ShowMessage('Jestem online');

//////////////-----koniec cytatu

moze teraz w timerze co sekunde bedziesz sprawdzal czy uzytkownik jest w sieci jsesli nie to costam,costam :)

p.s. ale podejrzewam ze tobie chodzi o cos takiego jak wykrywanie moementu zamykania windowsa.

0

dzis dodałem moje źródło licznik jeśli chcesz prześle potrzebne komponenty

0

Jeśli chodzi o wykrywanie połączenia, to ta metoda (z tego co wiem :-) ) u wszystkich działa:

[code]
uses Wininet;

function connected :boolean;
var Flags: DWORD;
begin
Flags:= INTERNET_CONNECTION_MODEM or INTERNET_CONNECTION_LAN or INTERNET_CONNECTION_PROXY or INTERNET_CONNECTION_MODEM_BUSY;
Result := InternetGetConnectedState(@Flags, 0); // sprawdz polaczenie.
end;
[/code]

...tyle ze jak juz wykryje ze nie jestem polaczony to nie zdąże nic zrobic (np. wyslac maila) :-|
Koxak jesli masz komponenty ktore moglyby pomoc, bylbym wdzieczny [niewinnosc]

0

<font color="green">...tyle ze jak juz wykryje ze nie jestem polaczony to nie zdąże nic zrobic
(np. wyslac maila) </span>

No przecież próbuje ci to uświadomic.. jak kamień w wode... jak już wykrywasz rozłączenie - już w tym momencie jesteś rozłączony. Nie da się nic zrobić i koniec.... byś musiał przewidywać przyszłość :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1