Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Imports System.Net.Sockets
- Imports System.Net
- Public Class Client
- Public lastmessage As String
- Public clientSocket As Socket
- Dim byteData(1023) As Byte
- Public Sub Connect(ByVal IP As String, ByVal Port As Integer)
- Try
- clientSocket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
- clientSocket.BeginConnect(New IPEndPoint(IPAddress.Parse(IP), Port), New AsyncCallback(AddressOf onConnect), Nothing)
- Catch ex As Exception
- MsgBox("Connect: " & ex.Message)
- End Try
- End Sub
- Private Sub onConnect(ByVal ar As IAsyncResult)
- clientSocket.EndConnect(ar)
- clientSocket.BeginReceive(byteData, 0, byteData.Length, SocketFlags.None, New AsyncCallback(AddressOf onRecieve), clientSocket)
- End Sub
- Private Sub onRecieve(ByVal ar As IAsyncResult)
- Dim client As Socket = ar.AsyncState
- client.EndReceive(ar)
- Dim bytesRec() As Byte = byteData
- lastmessage = System.Text.ASCIIEncoding.ASCII.GetString(bytesRec)
- clientSocket.BeginReceive(byteData, 0, byteData.Length, SocketFlags.None, New AsyncCallback(AddressOf onRecieve), clientSocket)
- End Sub
- Public Sub Send(ByVal msg As String)
- Dim sendBytes As Byte() = System.Text.ASCIIEncoding.ASCII.GetBytes(msg)
- clientSocket.BeginSend(sendBytes, 0, sendBytes.Length, SocketFlags.None, New AsyncCallback(AddressOf OnSend), clientSocket)
- End Sub
- Private Sub OnSend(ByVal ar As IAsyncResult)
- Dim client As Socket = ar.AsyncState
- client.EndSend(ar)
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement