jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
23 sept. 2004 à 14:28
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008
-
24 sept. 2004 à 03:11
Salut tout le monde.
J ai une question qui me parait difficile (voyons si les crack peuvent y repondre.)
J ai deux programmes qui tournent sous windows et qui utilisent le control winsock pour dialoguer entre eux...
ce qui arrive c est un nouveau client de type LINUX qui utilise le Socket Script pour dialoguer avec moi.
Alors, pour se connecter et envoyer de donnees, pas de probleme, je les recoit bien,
MAIS
le client LINUX ne recoit mes trames que lorsque moi je ferme la connection (liberation du buffer ou autre betise de ce genre...).
alors que pour winsock ces trames sont deja envoye (sendcomplete et tout le tintouin...).
- Y a t il quelques chose que j aurais oublie de configurer dans le winsock (mais il y en a tellement peu.)?
- Est ce que quelqu un a deja eu el meme probleme.
Enfin Bref si quelqu un pouvait me donner un petit coup de main, j aprecierai grandement.
Merci d avance pour vos eventuelles solution.
@+
Julien
-------------------------------------------------
Essai ca sinon on trouvera autre chose
-------------------------------------------------
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008 24 sept. 2004 à 03:08
un petit truc en meme temps dans mon SendHex jai un DoEvents
et entre chaque SendHex
Par ce que sinon jai des coupures
et jattend un peu voir si je vais avoire une réponse
si ca peu t aidé
Private Sub mReset_Click() ' Bouton Reset Carte Reseau
SendHex ("7006910455A5")
DoEvents
SendHex ("5004CE00") 'Demande de passé en mode reseau
DoEvents
SendHex ("70045002") 'Demande de passé a 500Kbs
DoEvents
SendFiltres 'Place les filtres par default
End Sub
'***************************************************
Public Sub SendHex(DataHexa As String)
Dim a As Integer
Dim TotalChaine As String
TotalChaine = ""
For a = 1 To Len(DataHexa) Step 2
TotalChaine = TotalChaine & Chr(Val("&H" & Mid(DataHexa, a, 2)))
Next
FMenu.Winsock1.SendData TotalChaine
WaitRep (5000)
End Sub
Public Sub WaitRep(Temps_Ms As Integer)
'----------------------------------------------------------------------------
' ATTENDRE LA REPONSE APRES ENVOI D'UNE COMMANDE
' ON ATTEND x SECONDE MAXIMUM, OU LA REPONSE
'----------------------------------------------------------------------------
Dim MyTime As Single
Dim a As Integer
For a = 0 To Temps_Ms Step 1
If FMenu.Winsock1.BytesReceived >= 1 Then
Exit Sub
End If
DoEvents
Next
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008 24 sept. 2004 à 03:11
un petit truc en meme temps dans mon SendHex jai un DoEvents
et entre chaque SendHex
Par ce que sinon jai des coupures
et jattend un peu voir si je vais avoire une réponse
si ca peu t aidé
Private Sub mReset_Click() ' Bouton Reset Carte Reseau
SendHex ("7006910455A5")
DoEvents
SendHex ("5004CE00") 'Demande de passé en mode reseau
DoEvents
SendHex ("70045002") 'Demande de passé a 500Kbs
DoEvents
SendFiltres 'Place les filtres par default
End Sub
'***************************************************
' ENVOYER LE DATA SUR WINSOCK1
'***************************************************
Public Sub SendHex(DataHexa As String)
Dim a As Integer
Dim TotalChaine As String
TotalChaine = ""
For a = 1 To Len(DataHexa) Step 2
TotalChaine = TotalChaine & Chr(Val("&H" & Mid(DataHexa, a, 2)))
Next
FMenu.Winsock1.SendData TotalChaine
WaitRep (5000)
End Sub
----------------------------------------------------------------------------
' ATTENDRE LA REPONSE APRES ENVOI D'UNE COMMANDE
' ON ATTEND x SECONDE MAXIMUM, OU LA REPONSE
'----------------------------------------------------------------------------
Public Sub WaitRep(Temps_Ms As Integer)
Dim a As Integer
For a = 0 To Temps_Ms Step 1
If FMenu.Winsock1.BytesReceived >= 1 Then
Exit Sub
End If
DoEvents
Next
End Sub