Ciao a tutti!

La mia situazione è la seguente, devo implementare il metodo Listen per la parte Server della mia applicazione Client/Server.

Prima di utilizzare il metodo Listen occorre implementare il metodo Bind e qui c'è una cosa che non mi è chiara.

Sulla guida in linea il metodo Bind è illustrato come segue:

codice:
Dichiarazione:

Public Sub Bind ( localEP As EndPoint)

Utilizzo:

Dim instance As Socket
Dim localEP As EndPoint
instance.Bind(localEP)
Ok, poi nella spiegazione viene riportato questo:

Se è necessario utilizzare uno specifico endpoint, utilizzare il metodo Bind. È necessario chiamare il metodo Bind prima del metodo Listen. Non è invece necessario chiamare il metodo Bind prima di utilizzare Connect se non si intende utilizzare uno specifico endpoint. È possibile utilizzare il metodo Bind con protocolli senza connessione e orientati alla connessione.

Prima di chiamare il metodo Bind, è necessario creare l'oggetto IPEndPoint locale da cui inviare dati. Se non esistono esigenze particolari in merito all'indirizzo locale assegnato, è possibile creare un oggetto IPEndPoint utilizzando IPAddress.Any come parametro di indirizzo e il provider del servizio sottostante assegnerà l'indirizzo di rete più appropriato. In questo modo è possibile semplificare l'applicazione se si dispone di più interfacce di rete. Se non esistono esigenze particolari in merito alla porta locale utilizzata, è possibile creare un oggetto IPEndPoint utilizzando 0 come numero di porta. In questo caso, il provider del servizio assegnerà un numero di porta disponibile compreso tra 1024 e 5000.

Se si utilizza l'approccio descritto, è possibile individuare l'indirizzo di rete locale e il numero di porta assegnati chiamando la proprietà LocalEndPoint. Se si utilizza un protocollo orientato alla connessione, LocalEndPoint non restituirà l'indirizzo di rete locale assegnato fino a quando non verrà effettuata una chiamata al metodo Connect o al metodo EndConnect. Se si utilizza un protocollo senza connessione, non sarà possibile accedere a queste informazioni fino a quando non verrà completata un'operazione di invio o ricezione.
Bene, a questo punto ho creato l'oggetto IPEndPoint ed ho inizializzato i suoi campi Address (con IPAddress.Any) e Port (con il numero di porta immesso dall'utente).

Ora devo richiamare il metodo Bind passando come parametro EndPoint, benissimo, ma EndPoint come deve essere inizializzato?

In pratica non capisco come agire sul parametro necessario al metodo Bind.

Qualcuno può illuminarmi?

Grazie!