ponowne polaczenie

0

Chcialbym napisac program pocztowy, ktory po rozlaczeniu z serwerem (chwilowa utrata polaczenia z internetem albo gdy serwer z jakiegos powodu przerywa polaczenie) laczylby sie z nim ponownie i kontynuowal sciaganie wiadomosci. Czy moglbym prosic o polecenie mi jakiegos komponentu do C++ Buildera?? Jesli chodzi o Indy i FastNet to gdy obsluze zdarzenie oddisconnected dodajac w nim wywolanie funkcji connect, to wyskakuja wyjatki 10038, ktore jak wyczytalem na stronie indy sa normalne i obslugiwane przez komponent, ale po ruszeniu programu dalej nie zostaje nawiazane polaczenie. Z gory dziekuje za pomoc.

0

Ja jak zwykle polecam TClientSocket + RFC do POP3

0

hmm... dzieki... no to mnie czeka troche czytania, ale nikt nie mowil, ze programowanie sieciowe bedzie proste :-)

0

Ja jak zwykle polecam TClientSocket + RFC do POP3

to ja polecam WinSock + RFC do POP3, jest jeszcze fajniej :-P
a poza tym ma się większą kontrolę, te zdarzenia OnRead to wcale
nie jest dobry pomysł w przypadku takich protokołów gdzie
jest ciągle pytanie i odpowiedź servera...

0

Dlaczego po utracie polaczenia z internetem komponent ClientSocket w ogole nie reaguje?? Nie odpala sie zdarzenie OnDisconnected, a funkcje w rodzaju SendBuf dzialaja tak, jakby faktycznie cos wysylaly, czyli zwracaja ilosc wyslanych bajtow i nie powoduja bledow.

0

Nie wiem, czy mam rację, ale chyba chodzi o to, że gniazdko (komponent TClientSocket w tym wypadku) nie może jednoznacznie stwierdzić, czy połączenie zostało rzeczywiści trwale utracone i dopiero po pewnym czasie (timeout) 'zdaje sobie z tego sprawę', tzn. uznaje połączenie za zerwane.

0

W zdarzeniu OnDisconnected ClientSocketa dodalem wyswietlenie informacji o tym, ze polaczenia juz nie ma. Rozlaczylem sie z internetem, odczekalem z 15 minut i nic. Komponent zachowuje sie, jakby wszystko bylo w porzadku... chyba jedynym rozwiazaniem jest zrobienie zdarzen, ktore beda odpalac sie, gdy rozlaczy/polaczy sie z netem i w nich dodac wylaczanie/wlaczanie ClientSocketa... z tym sobie poradze... dziekuje wszystkim za pomoc.

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