Domanda

Considera il seguente codice:

client.Send(data, data.Length, endpoint);
byte[] response = client.Receive(ref endpoint);

Mentre, secondo WireShark (sniffer di rete), l'host remoto risponde con dati, l'applicazione qui aspetta solo i dati per sempre ... per qualche motivo non riceve la risposta dall'host remoto.

Qualche idea?

È stato utile?

Soluzione

Probabilmente vuoi impostare due UdpClients: uno per l'ascolto, uno per l'invio.

Per l'UdpClient ricevente, utilizzare il costruttore che accetta una porta.

Altri suggerimenti

probabilmente l'host remoto ha un firewall quindi non è stato in grado di rispondere alla richiesta, prima di inviare la richiesta impostare

client.Client.ReceiveTimeout = 5000; 

quindi quando la risposta non è stata in grado di ottenere la richiesta si ha un'eccezione

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top