2009-09-30 10 views
2

J'essaie de me connecter à un serveur en utilisant BeginConnect et quand j'ai spécifié un IpAddress ou un port incorrect, je reçois une exception SocketException.EndConnect Exception

Le problème est que mon try/catch ne capture pas l'exception:

private void OnConnect(IAsyncResult result) 
{ 
    try 
    { 
     socket.EndConnect(result); 

     status = Status.WaitAck; 

     socket.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, onDataReady, null); 
    } 
    catch (Exception ex) 
    { 
     if (ConnectionError != null) 
      ConnectionError(this, new OpenWebNetErrorEventArgs(ex)); 
    } 
} 

Quand j'appelle la méthode socket.EndConnect VS me signaler l'exception et bloquer le programme ...

Comment puis-je le gérer?

Merci Federico

Répondre

0

Vous exécutez le programme sous débogueur? Si tel est le cas, vous avez VS pour interrompre toute exception levée, ou vous cassez le SocketException levé.

Si vous corrigez cela (décochez la colonne "levée" pour cette exception) et cela devrait permettre à votre gestionnaire Catch de s'exécuter.