VB TcpListener e TcpClient

Stato
Discussione chiusa ad ulteriori risposte.

Krysis™

Utente Gold
28 Marzo 2012
699
33
141
269
Salve stavo provando a creare un server ed un client dalla guida di speedjack che si scambiano delle informazioni, il tutto funziona perfettamente in ambito locale , quando poi provo a spostarmi in globale nasce qualche problema,
Questo e' il TcpListener che uso per la connessione sul mio computer, ovviamente nel client inserisco l'ip 127.0.0.1.

Dim Server As TcpListener
Server = New TcpListener(IPAddress.Parse("127.0.0.1"), 8888)
Server.Start()
Questo invece per due computer differenti sulla stessa rete , dove 192.168.1.13 e' il mio ip statico del computer dove ospita il server, e normalemente nel client metto l'ip del mio computer


Dim Server As TcpListener
Server = New TcpListener(IPAddress.Parse("192.168.1.13"), 8888)
Server.Start()
Adesso la domanda e' per farlo remoto come posso fare? Ho provato a cambiare l'indirizzo del server con il mio di casa, ma n Server.Start() mi da errore, come posso risolvere?
Grazie in anticipo e buona giornata
 
Usa IPAddress.Any come argomento dell'EndPoint . In modo che il server non si limiti ad accettare solo le connessioni locali.
Ti consiglio di usare il seguente costruttore :
Codice:
public TcpListener(IPEndPoint localEP)

quindi il tuo codice diventa automaticamente :

Codice:
Dim Server As TcpListener
Server = New TcpListener(New IpEndPoint(IpAddress.Any ,8888));
 
  • Mi piace
Reazioni: Krysis™
Usa IPAddress.Any come argomento dell'EndPoint . In modo che il server non si limiti ad accettare solo le connessioni locali.
Ti consiglio di usare il seguente costruttore :
Codice:
public TcpListener(IPEndPoint localEP)

quindi il tuo codice diventa automaticamente :

Codice:
Dim Server As TcpListener
Server = New TcpListener(New IpEndPoint(IpAddress.Any ,8888));

Grazie mille scusa se non ti ho risposto prima ma non ci sono stato , appena ho la possibilità testo . Thanks :D
 
Usa IPAddress.Any come argomento dell'EndPoint . In modo che il server non si limiti ad accettare solo le connessioni locali.
Ti consiglio di usare il seguente costruttore :
Codice:
public TcpListener(IPEndPoint localEP)

quindi il tuo codice diventa automaticamente :

Codice:
Dim Server As TcpListener
Server = New TcpListener(New IpEndPoint(IpAddress.Any ,8888));

Adesso il client non mi da piu errore ma mi dice che non risponde come mai?
 
il client , ricordo che quello è un server :omfg:
posta il codice del client e server , altrimenti non posso aiutarti
Si quello era il codice del server, però prima mi dava l'errore nel client che non riusciva a connettersi al server, ora invece nessun errore ma non risponde, non ho qui con me il codice sorry :(
 
Stato
Discussione chiusa ad ulteriori risposte.