[.NETV2] CLASSCOM - CLASSE DE COMMUNICATION EN RÉSEAU SIMPLIFIÉE GÉRANT LE MULTI

celiphane
Messages postés
466
Date d'inscription
samedi 16 février 2002
Statut
Membre
Dernière intervention
20 avril 2007
- 6 avril 2007 à 14:56
Bobdesbois
Messages postés
11
Date d'inscription
mercredi 4 juin 2003
Statut
Membre
Dernière intervention
10 octobre 2008
- 10 oct. 2008 à 14:28
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42106-netv2-classcom-classe-de-communication-en-reseau-simplifiee-gerant-le-multiclient-2-en-1-client-et-serveur-class-socket

Bobdesbois
Messages postés
11
Date d'inscription
mercredi 4 juin 2003
Statut
Membre
Dernière intervention
10 octobre 2008

10 oct. 2008 à 14:28
Bonjour,
Merci pour cette class. Je voulais savoir ce qu'il faudrai modifier pour l'utiliser sur windows mobile 5. Parce que j'ai essayé mais ca ne marche pas directement.
En tout cas elle marche tres bien pour du PC a PC.
Encore merci.
Yaurthek
Messages postés
12
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 juin 2009

18 avril 2008 à 16:01
Bonjour,
Cette classe m'est très utile, comme je l'ai déjà dit, mais je commence à atteindre ses limites : serait il possible d'inclure l'envoi de fichier ?(donc d'un tableau de byte directement plutôt qu'une string)
J'ai cherché longtemps comment faire, et la seule façon que j'ai trouvée est de transformer un fichier en string : System.Text.Encoding.Default.GetString(IO.File.ReadAllBytes(cheminDuFichier))
Cette méthode fonctionne mais je pense que ce serait bien plus rapide d'envoyer directement le fichier (j'ai essayé de modifier la classe, mais étant donné que j'ai déjà du mal à comprendre comment elle fonctionne...)
Alors Celiphane, si tu repasse par là, et que tu a du temps libre, je pense que ce serait une bonne idée...^^
Merci d'avance si quelqu'un répond
dimitriusai
Messages postés
76
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
7 mai 2009

11 févr. 2008 à 14:37
Voilà la solution:

Private Sub Srv_ConnectionRequestAccepted(ByRef SocketLocal As Socket) Handles Srv.ConnectionRequestAccepted
Try
'Création du thread
Dim myNewThread As New Thread(AddressOf Me.test)

' Dim myNewThread As New System.Threading.Thread(AddressOf test)
myNewThread.Name = "Thread ID:" & ThreadID
ThreadID += 1
'Invoke(New testDeleg(AddressOf test), New Object() {socket})
'Démarrage du Thread
myNewThread.Start(SocketLocal)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try

End Sub
dimitriusai
Messages postés
76
Date d'inscription
lundi 6 novembre 2006
Statut
Membre
Dernière intervention
7 mai 2009

11 févr. 2008 à 10:27
Merci pour la classe.
Je suis à la recherche d'une facon pour créer des threads afin de créer un nouveau client, chaque fois que le serveur recoit une demande de connection.

'ici le serveur reçoit la demande de connexion et l'accepte en créant le client ClassComm SrvReceive
Private Sub Srv_ConnectionRequestAccepted(ByRef sck As System.Net.Sockets.Socket) Handles Srv.ConnectionRequestAccepted

SrvReceive = New ClassComm(sck)
While SrvReceive.MsgCount < 1
End While
Dim cm As ClassComm.CommMessage = SrvReceive.ReadNextMsg
MySQL_SELECT(cm.Message)

End Sub

Comment faire pour créer un thread avec seulement ceci

SrvReceive = New ClassComm(sck)
While SrvReceive.MsgCount < 1
End While
Dim cm As ClassComm.CommMessage = SrvReceive.ReadNextMsg
MySQL_SELECT(cm.Message)

? Merci d'avance
COlive
Messages postés
91
Date d'inscription
mercredi 27 février 2002
Statut
Membre
Dernière intervention
3 décembre 2011

1 févr. 2008 à 10:16
Bonjour, très bon code.
Bien structuré, lisible, commentaires et explications détaillées.

Merci.
Afficher les 37 commentaires