Socket, tableau de byte et Hexa
Bonjour, je vous dévoile mon soucis, j'ai un callback de reception des sockets dans mon buffer, et je voudrais qu'après réception d'un socket dans mon tableau de byte,
Soi :
1 : Convertir le tableau de byte en hexa
2 : Filtrer le tableau et supprimer toutes les valeur hexa 0x00, etant un caractère non valide (Je ne peut pas le convertir en string c'est sa mon gros soucis)
Mon code qui je converti le tableau en string :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Private Sub CallBackReceive(ByVal async As IAsyncResult)
Dim LaSocket As Socket = CType(async.AsyncState, Socket)
Dim read As Integer
Try
read = LaSocket.EndReceive(async)
Catch ex As Exception
read = -1
Return
End Try
If (read > 0) Then
Dim chaine As String = ""
For i = 0 To read
If (_Buffer(i) = 0) Then
RaiseEvent OnReception(Me, New ElgSocketEventArgs(chaine, LaSocket))
chaine = ""
Else
chaine = chaine & Chr(_Buffer(i))
End If
Next
LaSocket.BeginReceive(_Buffer, 0, _Buffer.Length, SocketFlags.None, New AsyncCallback(AddressOf CallBackReceive), LaSocket)
End If
End Sub |
J'ai beau chercher sur gogole, mais je n'ai toujours pas trouver mon bonheur :(
Demande d'explication ... :)
Salut,
Peux tu donner un peu plus d'explication please ?
Je dois migrer un soft équivalent (que j'avais développé sous VB6) qui écoute ce qu'il se dit à la sortie d'un Autocom (PABX) connecté en IP sur le port 402.
Ce soft me permet d'afficher les appels entrants/sortants sous forme graphique.
J'ai commencé la migration, le soft détecte bien un traffic mais ne m'affiche rien dans ma liste. En plus clair il devrait m'écrire "PABX dit : " suivi du détail de l'appel (sous forme de texte concaténé que j'éclate par la suite).
Le soft m'écrit "PABX dit : " puis rien ou au mieux un carré.
comment faire pour récupérer la chaine de caractères que m'envoie le PABX ?
Merci ;)
yo'