J'ai créé une application Serveur qui lit les informations présentes sur le
port COM et les écrit sur le réseau ethernet au moyen d'un contrôle Winsock.
J'ai créé également une application Client qui lit les informations sur le
réseau ethernet au moyen d'un contrôle Winsock.
Je lance mon application Serveur sur la machine X, puis mon application
Client sur la machine Y. Tout est OK.
Je lance à présent une seconde fois mon application Client sur la machine Z.
Sur la machine Z, je reçoit les informations correctement mais la machine Y
ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac lorsque
je refermerait l'application de la machine Z.
Comment faire pour que plusieurs applications client reçoivent les
informations simultanément ?
Vous trouverez ci-dessous l'extrait de l'application Serveur et un extrait
de l'application Client
Application SERVEUR
private sub Envoi
For index = 1 To UserOnLine
DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority + Var_Type
+ Var_RoutingCount + " - " + TodayDate + " - " + TodayTime
AddTextRealTime ("Send TCP (" + Trim(str(index)) + ") - " + DataWinSock)
sckClient(index).SendData DataWinSock
Next index
End Sub
Private Sub sckClient_Close(index As Integer)
sckClient(index).Close
Unload sckClient(index)
UserOnLine = UserOnLine - 1
If UserOnLine = 0 Then LastIndex = 0
End Sub
Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As
Long)
'sckClient(index).GetData DataWinSock, vbString
End Sub
Private Sub sckListen_ConnectionRequest(ByVal requestID As Long)
UserOnLine = UserOnLine + 1
LastIndex = LastIndex + 1
Load sckClient(LastIndex)
sckClient(LastIndex).Accept requestID
End Sub
Application CLIENT
Private Sub Form_Load()
Winsock.RemoteHost = "10.0.0.39"
Winsock.RemotePort = "666"
Winsock.Connect
End Sub
Private Sub winsock_DataArrival(ByVal bytesTotal As Long)
Winsock.GetData Data$, vbString
If Len(outtext.Text) > 2000 Then
outtext.Text = ""
End If
outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10)
End Sub
Je vous serais très reconnaissant, de pouvoir me donner au moins piste de
recherche ou alors encore mieux, la solution !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Benoît O'Hare
tu l'as mis en TCP ou UDP? car TCP garanti les temps et les arrivées tandis que UDP balance les paquets sur les reseau en vrac
-- (Hello) | | | / O (o) (o) O (_) / o o0oo - - - - - - oo0oo (MrBinaire)
Benoît O'Hare www.tryskel.com (portail web) www.tryskel.net (communauté tryskel) "François Ranwez" a écrit dans le message de news: 3f47d932$0$24188$
Salut à tous,
J'ai créé une application Serveur qui lit les informations présentes sur
le
port COM et les écrit sur le réseau ethernet au moyen d'un contrôle
Winsock.
J'ai créé également une application Client qui lit les informations sur le réseau ethernet au moyen d'un contrôle Winsock.
Je lance mon application Serveur sur la machine X, puis mon application Client sur la machine Y. Tout est OK. Je lance à présent une seconde fois mon application Client sur la machine
Z.
Sur la machine Z, je reçoit les informations correctement mais la machine
Y
ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac
lorsque
je refermerait l'application de la machine Z.
Comment faire pour que plusieurs applications client reçoivent les informations simultanément ?
Vous trouverez ci-dessous l'extrait de l'application Serveur et un extrait de l'application Client
Application SERVEUR
private sub Envoi For index = 1 To UserOnLine DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority +
sckClient(index).SendData DataWinSock Next index End Sub
Private Sub sckClient_Close(index As Integer) sckClient(index).Close Unload sckClient(index) UserOnLine = UserOnLine - 1 If UserOnLine = 0 Then LastIndex = 0 End Sub
Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As Long)
'sckClient(index).GetData DataWinSock, vbString
End Sub
Private Sub sckListen_ConnectionRequest(ByVal requestID As Long) UserOnLine = UserOnLine + 1 LastIndex = LastIndex + 1 Load sckClient(LastIndex) sckClient(LastIndex).Accept requestID End Sub
Application CLIENT
Private Sub Form_Load() Winsock.RemoteHost = "10.0.0.39" Winsock.RemotePort = "666" Winsock.Connect End Sub
Private Sub winsock_DataArrival(ByVal bytesTotal As Long)
Winsock.GetData Data$, vbString If Len(outtext.Text) > 2000 Then outtext.Text = "" End If outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10)
End Sub
Je vous serais très reconnaissant, de pouvoir me donner au moins piste de recherche ou alors encore mieux, la solution !
Un grand merci d'avance François Ranwez
tu l'as mis en TCP ou UDP?
car TCP garanti les temps et les arrivées tandis que UDP balance les paquets
sur les reseau en vrac
--
(Hello)
| | | / O
(o) (o) O
(_) / o
o0oo - - - - - - oo0oo
(MrBinaire)
Benoît O'Hare
www.tryskel.com (portail web)
www.tryskel.net (communauté tryskel)
"François Ranwez" <francois.ranwez@brutele.be> a écrit dans le message de
news: 3f47d932$0$24188$ba620e4c@reader1.news.skynet.be...
Salut à tous,
J'ai créé une application Serveur qui lit les informations présentes sur
le
port COM et les écrit sur le réseau ethernet au moyen d'un contrôle
Winsock.
J'ai créé également une application Client qui lit les informations sur le
réseau ethernet au moyen d'un contrôle Winsock.
Je lance mon application Serveur sur la machine X, puis mon application
Client sur la machine Y. Tout est OK.
Je lance à présent une seconde fois mon application Client sur la machine
Z.
Sur la machine Z, je reçoit les informations correctement mais la machine
Y
ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac
lorsque
je refermerait l'application de la machine Z.
Comment faire pour que plusieurs applications client reçoivent les
informations simultanément ?
Vous trouverez ci-dessous l'extrait de l'application Serveur et un extrait
de l'application Client
Application SERVEUR
private sub Envoi
For index = 1 To UserOnLine
DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority +
sckClient(index).SendData DataWinSock
Next index
End Sub
Private Sub sckClient_Close(index As Integer)
sckClient(index).Close
Unload sckClient(index)
UserOnLine = UserOnLine - 1
If UserOnLine = 0 Then LastIndex = 0
End Sub
Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As
Long)
'sckClient(index).GetData DataWinSock, vbString
End Sub
Private Sub sckListen_ConnectionRequest(ByVal requestID As Long)
UserOnLine = UserOnLine + 1
LastIndex = LastIndex + 1
Load sckClient(LastIndex)
sckClient(LastIndex).Accept requestID
End Sub
Application CLIENT
Private Sub Form_Load()
Winsock.RemoteHost = "10.0.0.39"
Winsock.RemotePort = "666"
Winsock.Connect
End Sub
Private Sub winsock_DataArrival(ByVal bytesTotal As Long)
Winsock.GetData Data$, vbString
If Len(outtext.Text) > 2000 Then
outtext.Text = ""
End If
outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10)
End Sub
Je vous serais très reconnaissant, de pouvoir me donner au moins piste de
recherche ou alors encore mieux, la solution !
tu l'as mis en TCP ou UDP? car TCP garanti les temps et les arrivées tandis que UDP balance les paquets sur les reseau en vrac
-- (Hello) | | | / O (o) (o) O (_) / o o0oo - - - - - - oo0oo (MrBinaire)
Benoît O'Hare www.tryskel.com (portail web) www.tryskel.net (communauté tryskel) "François Ranwez" a écrit dans le message de news: 3f47d932$0$24188$
Salut à tous,
J'ai créé une application Serveur qui lit les informations présentes sur
le
port COM et les écrit sur le réseau ethernet au moyen d'un contrôle
Winsock.
J'ai créé également une application Client qui lit les informations sur le réseau ethernet au moyen d'un contrôle Winsock.
Je lance mon application Serveur sur la machine X, puis mon application Client sur la machine Y. Tout est OK. Je lance à présent une seconde fois mon application Client sur la machine
Z.
Sur la machine Z, je reçoit les informations correctement mais la machine
Y
ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac
lorsque
je refermerait l'application de la machine Z.
Comment faire pour que plusieurs applications client reçoivent les informations simultanément ?
Vous trouverez ci-dessous l'extrait de l'application Serveur et un extrait de l'application Client
Application SERVEUR
private sub Envoi For index = 1 To UserOnLine DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority +
sckClient(index).SendData DataWinSock Next index End Sub
Private Sub sckClient_Close(index As Integer) sckClient(index).Close Unload sckClient(index) UserOnLine = UserOnLine - 1 If UserOnLine = 0 Then LastIndex = 0 End Sub
Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As Long)
'sckClient(index).GetData DataWinSock, vbString
End Sub
Private Sub sckListen_ConnectionRequest(ByVal requestID As Long) UserOnLine = UserOnLine + 1 LastIndex = LastIndex + 1 Load sckClient(LastIndex) sckClient(LastIndex).Accept requestID End Sub
Application CLIENT
Private Sub Form_Load() Winsock.RemoteHost = "10.0.0.39" Winsock.RemotePort = "666" Winsock.Connect End Sub
Private Sub winsock_DataArrival(ByVal bytesTotal As Long)
Winsock.GetData Data$, vbString If Len(outtext.Text) > 2000 Then outtext.Text = "" End If outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10)
End Sub
Je vous serais très reconnaissant, de pouvoir me donner au moins piste de recherche ou alors encore mieux, la solution !
Un grand merci d'avance François Ranwez
François Ranwez
en TCP
"Benoît O'Hare" a écrit dans le message de news:
tu l'as mis en TCP ou UDP? car TCP garanti les temps et les arrivées tandis que UDP balance les
paquets
sur les reseau en vrac
-- (Hello) | | | / O (o) (o) O (_) / o o0oo - - - - - - oo0oo (MrBinaire)
Benoît O'Hare www.tryskel.com (portail web) www.tryskel.net (communauté tryskel) "François Ranwez" a écrit dans le message de news: 3f47d932$0$24188$ > Salut à tous, > > J'ai créé une application Serveur qui lit les informations présentes sur le > port COM et les écrit sur le réseau ethernet au moyen d'un contrôle Winsock. > J'ai créé également une application Client qui lit les informations sur
le
> réseau ethernet au moyen d'un contrôle Winsock. > > Je lance mon application Serveur sur la machine X, puis mon application > Client sur la machine Y. Tout est OK. > Je lance à présent une seconde fois mon application Client sur la
machine
Z. > Sur la machine Z, je reçoit les informations correctement mais la
machine
Y > ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac lorsque > je refermerait l'application de la machine Z. > > Comment faire pour que plusieurs applications client reçoivent les > informations simultanément ? > > Vous trouverez ci-dessous l'extrait de l'application Serveur et un
extrait
> de l'application Client > > Application SERVEUR > > private sub Envoi > For index = 1 To UserOnLine > DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority + Var_Type > + Var_RoutingCount + " - " + TodayDate + " - " + TodayTime > AddTextRealTime ("Send TCP (" + Trim(str(index)) + ") - " + DataWinSock) > sckClient(index).SendData DataWinSock > Next index > End Sub > > > Private Sub sckClient_Close(index As Integer) > sckClient(index).Close > Unload sckClient(index) > UserOnLine = UserOnLine - 1 > If UserOnLine = 0 Then LastIndex = 0 > End Sub > > Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As > Long) > > 'sckClient(index).GetData DataWinSock, vbString > > End Sub > > Private Sub sckListen_ConnectionRequest(ByVal requestID As Long) > UserOnLine = UserOnLine + 1 > LastIndex = LastIndex + 1 > Load sckClient(LastIndex) > sckClient(LastIndex).Accept requestID > End Sub > > > > Application CLIENT > > Private Sub Form_Load() > Winsock.RemoteHost = "10.0.0.39" > Winsock.RemotePort = "666" > Winsock.Connect > End Sub > > Private Sub winsock_DataArrival(ByVal bytesTotal As Long) > > Winsock.GetData Data$, vbString > If Len(outtext.Text) > 2000 Then > outtext.Text = "" > End If > outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10) > > End Sub > > Je vous serais très reconnaissant, de pouvoir me donner au moins piste
de
> recherche ou alors encore mieux, la solution ! > > Un grand merci d'avance > François Ranwez > >
en TCP
"Benoît O'Hare" <benoit.ohare@ifrance.com> a écrit dans le message de
news:OYIuQntaDHA.2632@TK2MSFTNGP12.phx.gbl...
tu l'as mis en TCP ou UDP?
car TCP garanti les temps et les arrivées tandis que UDP balance les
paquets
sur les reseau en vrac
--
(Hello)
| | | / O
(o) (o) O
(_) / o
o0oo - - - - - - oo0oo
(MrBinaire)
Benoît O'Hare
www.tryskel.com (portail web)
www.tryskel.net (communauté tryskel)
"François Ranwez" <francois.ranwez@brutele.be> a écrit dans le message de
news: 3f47d932$0$24188$ba620e4c@reader1.news.skynet.be...
> Salut à tous,
>
> J'ai créé une application Serveur qui lit les informations présentes sur
le
> port COM et les écrit sur le réseau ethernet au moyen d'un contrôle
Winsock.
> J'ai créé également une application Client qui lit les informations sur
le
> réseau ethernet au moyen d'un contrôle Winsock.
>
> Je lance mon application Serveur sur la machine X, puis mon application
> Client sur la machine Y. Tout est OK.
> Je lance à présent une seconde fois mon application Client sur la
machine
Z.
> Sur la machine Z, je reçoit les informations correctement mais la
machine
Y
> ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac
lorsque
> je refermerait l'application de la machine Z.
>
> Comment faire pour que plusieurs applications client reçoivent les
> informations simultanément ?
>
> Vous trouverez ci-dessous l'extrait de l'application Serveur et un
extrait
> de l'application Client
>
> Application SERVEUR
>
> private sub Envoi
> For index = 1 To UserOnLine
> DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority +
Var_Type
> + Var_RoutingCount + " - " + TodayDate + " - " + TodayTime
> AddTextRealTime ("Send TCP (" + Trim(str(index)) + ") - " +
DataWinSock)
> sckClient(index).SendData DataWinSock
> Next index
> End Sub
>
>
> Private Sub sckClient_Close(index As Integer)
> sckClient(index).Close
> Unload sckClient(index)
> UserOnLine = UserOnLine - 1
> If UserOnLine = 0 Then LastIndex = 0
> End Sub
>
> Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As
> Long)
>
> 'sckClient(index).GetData DataWinSock, vbString
>
> End Sub
>
> Private Sub sckListen_ConnectionRequest(ByVal requestID As Long)
> UserOnLine = UserOnLine + 1
> LastIndex = LastIndex + 1
> Load sckClient(LastIndex)
> sckClient(LastIndex).Accept requestID
> End Sub
>
>
>
> Application CLIENT
>
> Private Sub Form_Load()
> Winsock.RemoteHost = "10.0.0.39"
> Winsock.RemotePort = "666"
> Winsock.Connect
> End Sub
>
> Private Sub winsock_DataArrival(ByVal bytesTotal As Long)
>
> Winsock.GetData Data$, vbString
> If Len(outtext.Text) > 2000 Then
> outtext.Text = ""
> End If
> outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10)
>
> End Sub
>
> Je vous serais très reconnaissant, de pouvoir me donner au moins piste
de
> recherche ou alors encore mieux, la solution !
>
> Un grand merci d'avance
> François Ranwez
>
>
tu l'as mis en TCP ou UDP? car TCP garanti les temps et les arrivées tandis que UDP balance les
paquets
sur les reseau en vrac
-- (Hello) | | | / O (o) (o) O (_) / o o0oo - - - - - - oo0oo (MrBinaire)
Benoît O'Hare www.tryskel.com (portail web) www.tryskel.net (communauté tryskel) "François Ranwez" a écrit dans le message de news: 3f47d932$0$24188$ > Salut à tous, > > J'ai créé une application Serveur qui lit les informations présentes sur le > port COM et les écrit sur le réseau ethernet au moyen d'un contrôle Winsock. > J'ai créé également une application Client qui lit les informations sur
le
> réseau ethernet au moyen d'un contrôle Winsock. > > Je lance mon application Serveur sur la machine X, puis mon application > Client sur la machine Y. Tout est OK. > Je lance à présent une seconde fois mon application Client sur la
machine
Z. > Sur la machine Z, je reçoit les informations correctement mais la
machine
Y > ne reçoit plus rien. Elle (la machine Y) recevra les données en vrac lorsque > je refermerait l'application de la machine Z. > > Comment faire pour que plusieurs applications client reçoivent les > informations simultanément ? > > Vous trouverez ci-dessous l'extrait de l'application Serveur et un
extrait
> de l'application Client > > Application SERVEUR > > private sub Envoi > For index = 1 To UserOnLine > DataWinSock = Var_GroupAddress_Dec + Var_Data + Var_Priority + Var_Type > + Var_RoutingCount + " - " + TodayDate + " - " + TodayTime > AddTextRealTime ("Send TCP (" + Trim(str(index)) + ") - " + DataWinSock) > sckClient(index).SendData DataWinSock > Next index > End Sub > > > Private Sub sckClient_Close(index As Integer) > sckClient(index).Close > Unload sckClient(index) > UserOnLine = UserOnLine - 1 > If UserOnLine = 0 Then LastIndex = 0 > End Sub > > Private Sub sckClient_DataArrival(index As Integer, ByVal bytesTotal As > Long) > > 'sckClient(index).GetData DataWinSock, vbString > > End Sub > > Private Sub sckListen_ConnectionRequest(ByVal requestID As Long) > UserOnLine = UserOnLine + 1 > LastIndex = LastIndex + 1 > Load sckClient(LastIndex) > sckClient(LastIndex).Accept requestID > End Sub > > > > Application CLIENT > > Private Sub Form_Load() > Winsock.RemoteHost = "10.0.0.39" > Winsock.RemotePort = "666" > Winsock.Connect > End Sub > > Private Sub winsock_DataArrival(ByVal bytesTotal As Long) > > Winsock.GetData Data$, vbString > If Len(outtext.Text) > 2000 Then > outtext.Text = "" > End If > outtext.Text = outtext.Text + Data$ + Chr$(13) + Chr$(10) > > End Sub > > Je vous serais très reconnaissant, de pouvoir me donner au moins piste
de
> recherche ou alors encore mieux, la solution ! > > Un grand merci d'avance > François Ranwez > >