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