Les notifications :
ON_SOCKOPEN : qd on a réussi a se connecter apres une commande SockOpen.
SOCKOPEN_ERROR : la connection a échoué. Le socket va être automatiquement fermé.
ON_SOCKREAD : qd des données viennent d'etre lues sur le socket. On y accede avec SockRead.
ON_SOCKREADLN : qd une ligne vient d'etre lue sur le socket, grace a eventuellement plusieurs recv. On accède a la ligne avec SockReadln (les \r et \n on été enlevés).
SOCKREAD_ERROR : erreur lors de la lecture, peut etre qu'a l'autre bout on s'est déconnecté. Le socket va être automatiquement fermé.
ON_SOCKWRITE : des données ont été correctement envoyées.
SOCKWRITE_ERROR : erreur lors de l'envoi de données. Le socket n'est pas fermé tout seul, a vous de le faire si vous voulez avec SockClose.
ON_SOCKLISTEN : votre socket qui écoutait, vient de se rendre compte que quelqu'un veut se connecter. Il faut accepter la connection avec SockAccept(ProSock* unsocketpourlegarsquiveutseconnecter), sinon le socket est fermé.
SOCKLISTEN_ERROR : erreur lors de l'écoute. ex: si le port d'écoute est déja pris par une autre application.
ON_SOCKACCEPT : l'acceptation aprés le ON_SOCKLISTEN a réussi. Le socket est bien connecté à la personne qui était arrivée.
SOCKACCEPT_ERROR : l'acceptation a échoué.
ON_SOCKCLOSE : le socket a été fermé par un SockClose de votre part, ou bien il a été fermé automatiquement par une méthode de la classe.
SOCKET_ALREADY_USED : si vous essayez de faire par exemple 2 SockConnect de suite avec le meme socket (et que le premier avait réussi...)
Vous pouvez utilisez les methodes Ip() et Port() pour connaitre les ip et port de la connection distante.
Vous pouvez marquer le socket avec SockMark comme ds mIRC. Ya également un champ State qui peut servir de marque entière, ca peut etre utile ds certains cas.
Au fait, les sockets crées vont utiliser TCP...
Merci de signaler les éventuels bugs que vous trouverez, yen reste surement.
Un bug qui n'en est pas un : un oubli de break ds un case, ds votre fonction qui intercepte les notifications.