VB 2008 timeout connessioni

lunedì 04 luglio 2011 - 15.48
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows 7  |  Visual Studio 2008

maxranzy Profilo | Newbie

Salve,

sono un newbie di questo forum e di vb.net.
Avrei un problemino con il timeout delle connessioni socket; mi spiego meglio. Stò facendo un piccolo programma che testa se una serie di connessioni ip/porta sono correttamente raggiungibili da un pc/server, e per fare questo eseguo una socket verso l'ip/porta.
Se la connessione è aperta tutto ok, ma se non è raggiungibile devo attendere il timeout (circa 30 secondi), il che è molto fastidioso, di conseguenza vorrei ridurre questo timeout a 1 secondo circa.
Come è possibile?

Il codice da me usato è questo:

Dim ip, porta As String
Dim host As IPAddress = Nothing
Dim mySock As Socket = Nothing
If Not IPAddress.TryParse(objAddress.ToString, host) Then
MessageBox.Show("Indirizzo " + ip + " non valido")
Exit Sub
End If

Dim objAddress As IPAddress = New IPAddress(GetHostByName(ip).AddressList(0).Address)
Dim ep As IPEndPoint = New IPEndPoint(host, Integer.Parse(porta))
mySock = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
'Connessione Socket
mySock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 50)
mySock.Connect(ep)
'Controllo se connesso
If mySock.Connected Then
MessageBox.Show("Connessione OK")
Else
MessageBox.Show("Connessione KO")
End If

Grazie
Max

luigidibiasi Profilo | Guru

leggi qua:
http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/2281199d-cd28-4b5c-95dc-5a888a6da30d/

Luigi Di Biasi


http://www.dibiasi.it/
http://netsell.dibiasi.it - ecomm software -
http://blogs.dotnethell.it/luigidibiasi/

maxranzy Profilo | Newbie

Grazie mille,

solo che l'esempio è in C# (che non conosco) e a me serve in VB (che conosco poco e che stò cercando di imparare).
A quanto ho capito non è possibile settare un timeout alla connessione client, ma (purtroppo) solo a quella server

ciao
max
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5