TCP et UDP

TCP et UDP - Programmation

Marsh Posté le 07-02-2001 à 13:14:41    

ya qqun qui a reussi a faire marcher ces protocoles sous windows 2000 ?
 
A CHAQUE FOIS , j'ai une erreur sur la ligne de code suivante !udpPeerA.SendData txtSend.Text
 
 
 
pareil en TCP !
m'enerve !
si qqun a une app ki marche en TCP ze veu bien la source car la je sais plus koa faire !
 :eek2:  :eek2:  :eek2:

Reply

Marsh Posté le 07-02-2001 à 13:14:41   

Reply

Marsh Posté le 07-02-2001 à 13:32:53    

j'kroa ke c pa clair c'ke g dit ... :D
en fait g fait, (pour le TCP)
une app client et une app serveur
ya 2 controles text, et sur le client, un bouton connect (en + des 2 textes)(il se connecte grace au nom de la machine, pas l'ip)
dès que j'écris du texte sur le serveur ou le client, ca me fait une sale erreur 40001
 
en UDP
 
idem, 2 apps clientes (UDP = pas de serveur)
interface similaire (pas de bouton connect)
dès ke je tape un texte déstinée a etre envoyé sur l'autre machine (via le nom de la machine, port 1001)
ca foire, erreur 10014

Reply

Marsh Posté le 07-02-2001 à 14:53:43    

:hot:

Reply

Marsh Posté le 07-02-2001 à 15:42:20    

Tu utilises quel objet ?
 
tu fait koi comment ?
 
montre une partie du source.
 
Mon Chat passe en TCP, et ça marche nikel qu'il soit sous NT, 2K ou 9x

Reply

Marsh Posté le 07-02-2001 à 15:56:55    

TCP : 1 feuille server, 1 feuille client
 
SERVER
 
Private Sub Form_Load()
' Donne à la propriété LocalPort une valeur
' entière. Puis invoque la méthode Listen.
tcpServer.LocalPort = 1001
tcpServer.Listen
' Affiche la feuille client.
frmclient.Show
End Sub
 
Private Sub tcpServer_ConnectionRequest _
(ByVal requestID As Long)
' Vérifie que le contrôle est fermé. Sinon, ferme
' la connexion en cours avant d'accepter la
' nouvelle.
If tcpServer.State <> sckClosed Then _
tcpServer.Close
' Accepte la demande avec le paramètre requestID.
tcpServer.Accept requestID
End Sub
 
Private Sub txtSendData_Change()
' Le contrôle TextBox nommé txtSendData contient
' les données à envoyer. Chaque fois que l'utilisateur entre du
' texte dans le contrôle textbox, la chaîne est envoyée en
' utilisant la méthode SendData.
tcpServer.SendData txtSendData.Text
End Sub
 
Private Sub tcpServer_DataArrival _
(ByVal bytesTotal As Long)
' Déclare une variable pour les données reçues.
' Invoque la méthode GetData et paramètre pour
' ces données la propriété Text d'un contrôle
' TextBox nommé txtOutput.
Dim strData As String
tcpServer.GetData strData
txtoutput.Text = strData
End Sub
 
 
CLIENT
 
Private Sub Form_Load()
' Le nom du contrôle Winsock est tcpClient.
' Note : pour spécifier un hôte distant, vous pouvez utiliser soit
' l'adresse IP (ex: "121.111.1.1" ), soit le nom complet de
' l'ordinateur, comme ci-dessous.
tcpclient.RemoteHost = "skylight"
tcpclient.RemotePort = 1001
End Sub
 
Private Sub cmdConnect_Click()
' Invoque la méthode Connect pour établir une
' connexion.
tcpclient.Connect
End Sub
 
Private Sub txtSendData_Change()
tcpclient.SendData txtsend.Text
End Sub
 
Private Sub tcpClient_DataArrival _
(ByVal bytesTotal As Long)
Dim strData As String
tcpclient.GetData strData
txtoutput.Text = strData
End Sub
 
 
 
 
UDP
2 feuilles client (A et B)
 
 
feuille A
Private Sub Form_Load()
' Le nom du contrôle est udpPeerA
With udpPeerA
' IMPORTANT: assurez-vous de changer la valeur de RemoteHost
' pour lui donner le nom de votre ordinateur
.RemoteHost = "PeerB"
.RemotePort = 1001   ' Port auquel on se connecte.
.Bind 1002                ' Établit le lien avec le port local.
End With
frmPeerB.Show                 ' Affiche la seconde feuille.
End Sub
 
Private Sub txtSend_Change()
' Envoie le texte dès qu'il est tapé.
udpPeerA.SendData txtSend.Text
End Sub
 
Private Sub udpPeerA_DataArrival _
(ByVal bytesTotal As Long)
Dim strData As String
udpPeerA.GetData strData
txtOutput.Text = strData
End Sub
 
 
FEUILLE B
Private Sub Form_Load()
' Le nom du contrôle est udpPeerB.
With udpPeerB
' IMPORTANT : assurez-vous de changer la valeur de RemoteHost
' pour lui donner le nom de votre ordinateur.
.RemoteHost = "PeerA"
.RemotePort = 1002    ' Port auquel on se connecte.
.Bind 1001                ' Établit le lien avec le port local.
End With
End Sub
 
Private Sub txtSend_Change()
' Envoie le texte dès qu'il est tapé.
udpPeerB.SendData txtSend.Text
End Sub
 
Private Sub udpPeerB_DataArrival _
(ByVal bytesTotal As Long)
Dim strData As String
udpPeerB.GetData strData
txtOutput.Text = strData
End Sub
 
yen a ki vont rire mais c l'exemple par defaut, de la MSDN a propos du composant winsock 6.0 (SP4)
 
et j'arrive pas a le faire marcher ! (je peux pas tester sou 9x)
 
 
g win2k pas SP1 et DX7.0a

Reply

Marsh Posté le 07-02-2001 à 15:57:59    

t'as icq magicbuzz ?

Reply

Marsh Posté le 07-02-2001 à 17:29:32    

Nan, j'ai pas ICQ.
 
Euh... met "skylight" à la place de "PeerA" at "PeerB"
 
Sinon, dans MSDN, y'a un exemple d'un serveur "multi-client", en fait c'est un tableau de WinSock
 
Grossomodo, tu fais exactement ce qu'il y a dans MSDN (n'oublie pas l'intégrer le composant WinSock dans ta feuille !) et ça marche...
 
C'est comme ça que j'ai débuté aussi...
 
3 heures après naissait la béta 1 de mon chat :D

Reply

Marsh Posté le 07-02-2001 à 19:27:14    

tu me donnes l'adresse disk dur de la page html (de msdn) concernée ?
Merci :D (un peu de flemme ca fait du bien :D)

Reply

Marsh Posté le 07-02-2001 à 20:52:37    

l'adresse quoi ???

Reply

Marsh Posté le 07-02-2001 à 21:08:20    

bin dans MSDN (la page que tu dis )
tu fais propriétés, , c 'est une page html

Reply

Marsh Posté le 07-02-2001 à 21:08:20   

Reply

Marsh Posté le 07-02-2001 à 21:55:26    

bah ouais, mais d'une version de MSDN à l'autre, c pas pareil...
 
fait une recherche sur "WinSock"

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed