Client - Server -> Socket Error # 10060. Proszę o pomoc

0

Hej hej.
Słuchajcie panowie, mam wielki problem.
Piszę sobie 'aplikację' typu client-server.
Korzystam z ClientSocket oraz z Serversocket.
Aplikacja u mnie na kompie działa. Klient łączy się z Serwerem gdy podaje adres 127.0.0.1.
Ale gdy chciałem sprawdzić czy u kumpla działa to lipa. Na 2óch kompach próbowałem. Firewalle i Zapory Wina były wyłączone. Na 1nym był neoshit, 2gi miał stałe.
No i powiem, że nihuhu nie działa.
Klient nie może się połączyć z Serwerem. Wyskakuje mi informacja Socker Error # 10060.
Próbowałem też z komponentami Indy: IdTCPClient oraz IdTCPServer. I to samo mi wyskakuje.

wklejam kody klienta i serva na ClientSocket oraz z Serversocket:

serwer


procedure TForm1.FormActivate(Sender: TObject);
begin
 ServerSocket1.Port:=1900;
 ServerSocket1.Active:=True;
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
Var
wiadomosc : String;
  begin
wiadomosc:=serversocket1.Socket.Connections[0].ReceiveText;
end;

[/b]

klient


procedure TForm1.Button1Click(Sender: TObject);
begin
 ClientSocket1.Port:=1900;
 ClientSocket1.Address:=Edit1.Text; //Wartość Edit1
 ClientSocket1.Active:=True; //Aktywuje ClientSocket
end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
 Label2.Caption:='Połączony'; //Zmienia tekst Label2 na Połączony
end;

procedure TForm1.ClientSocket1Connecting(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Label2.Caption:='Łączenie...'; //Łączenie
end;

procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
 Label2.Caption:='Rozłączony'; //zmieniamy Caption na Rożłączony
end;

procedure TForm1.ClientSocket1Error(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
Label2.Caption:='Błąd przy połączeniu!'; //Błąd
end;

oraz kody z klienta i serva z komponentami Indy:

Server:


procedure TForm1.FormActivate(Sender: TObject);
begin
IdTCPServer1.DefaultPort:=1900;
 IdTCPServer1.Active:=true;
end;
procedure TForm1.IdTCPServer1Connect(AThread: TIdPeerThread);
begin
   Memo1.lines.add('Połączenie od: ' + Athread.Connection.Binding.PeerIP)
end;

klient:


procedure TForm1.Button1Click(Sender: TObject);
begin
IdTCPClient1.Port:=1900;
IdTCPClient1.Host := edit1.text;
IdTCPClient1.Connect;
if IdTCPClient1.Connected then label1.caption:='połączono'
else label1.caption:='nie połączono';
end;

Patrzyłem se po googlach i nic ciekawego na to nie znalazłem.
Na jakimś forum pisali, że to błąd gdy server jest wyłączony, ale to nie możliwe bo był włączony.
Mam nadziieje, że jakiś magik będzie wiedział o co biega, czy co jest nie tak.
pzdr

0

A jak to twoje stałe łącze się prezentuje? Neostrada ma zewnętrzne IP więc ok. Ale ty może jesteś w sieci i zewnętrznego IP nie masz, tylko za jakimś NATem siedzisz?

0

ja mam neo, kumpel ma neo = ten sam blad

ja mam neo, kumpel ma stale = ten sam blad

i analogicznie tez ten sam efekt.

przed chwila zrobilem w domku Lana z 2gim kompem i tez ten sam blad.

nikt z nas nie był za NATem
pzdr

0

czylin nikt nie zna odpowiedzi?/porady?

0
levandii napisał(a)

czylin nikt nie zna odpowiedzi?/porady?

Postaw na jednym kompie serwer http albo ftp lub coś innego.
Zobacz czy działa - będziesz wiedzieć czy to wina twojego programu czy czegoś innego.

0

Aplikacje typu klient serwer zawsze trudno sie diagnozuje. Dostajesz standardowy błąd, jak dla mnie coś skopałeś z ustawieniami i jest problem z odnalezieniem portu. Pytanie pierwsze w koncu co z czym łączysz, i jak ustawiasz adresz IP. Pamietaj, ze adres IP w sieci lokalnej nie jest widziany zewnętrznie. Zanim coś poustawiasz daj pinga w jedna i drugą stronę, a na dzieńdobry optymalnie jeśli potestujesz na dóch komputerach stojących obok siebie w jednej podsieci.

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