I was wondering would adding a while loop that is always true with a tcp listener inside would allow it to always listen for connecitons off a client?
As at the moment with the method i am tryin it only listen to a client once then stops listening
Can anyone see what I am doing wrong?
As at the moment with the method i am tryin it only listen to a client once then stops listening
Can anyone see what I am doing wrong?
VB.NET:
[size=2][color=#0000ff]Dim[/color][/size][size=2] start [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] [/size][size=2][color=#0000ff]Boolean
[/color][/size][size=2]start = [/size][size=2][color=#0000ff]True
[/color][/size][size=2][/size][size=2][color=#008000]' Must listen on correct port- must be same as port client wants to connect on.
[/color][/size][size=2][/size][size=2][color=#0000ff]Const[/color][/size][size=2] portNumber [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]Integer[/color][/size][size=2] = 8000
[/size][size=2][color=#0000ff]Dim[/color][/size][size=2] TcpListener [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] TcpListener(portNumber)
TcpListener.Start()
[/size][size=2][color=#0000ff]While[/color][/size][size=2] (start)
Console.WriteLine("Waiting for connection...")
[/size][size=2][color=#0000ff]Try
[/color][/size][size=2][/size][size=2][color=#008000]'Accept the pending client connection and return a TcpClient initialized for communication.
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] tcpClient [/size][size=2][color=#0000ff]As[/color][/size][size=2] TcpClient = TcpListener.AcceptTcpClient()
Console.WriteLine("Connection accepted.")
[/size][size=2][color=#008000]'Get the stream
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] networkStream [/size][size=2][color=#0000ff]As[/color][/size][size=2] NetworkStream = tcpClient.GetStream()
[/size][size=2][color=#008000]' Read the stream into a byte array
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] bytes(tcpClient.ReceiveBufferSize) [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]Byte
[/color][/size][size=2]networkStream.Read(bytes, 0, [/size][size=2][color=#0000ff]CInt[/color][/size][size=2](tcpClient.ReceiveBufferSize))
[/size][size=2][color=#008000]' Return the data received from the client to the console.
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] clientdata [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]String[/color][/size][size=2] = Encoding.Unicode.GetString(bytes)
Console.WriteLine(("Client sent: " + clientdata))
[/size][size=2][color=#008000]
[/color][/size][size=2][/size][size=2][color=#008000]
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] responseString [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]String[/color][/size][size=2] = "Connected to server."[/size][size=2][color=#008000]
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] ipadd [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]Integer[/color][/size][size=2] = 998
sConString = tcpser.ConnectionString()
[/size][size=2][color=#0000ff]Dim[/color][/size][size=2] conName2 [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] OleDb.OleDbConnection(sConString)
conName2.Open()
[/size][size=2][color=#0000ff]Try
[/color][/size][size=2]Console.WriteLine(("Client data sent: " + clientdata))
sSQL = "INSERT INTO Data (IPAddress,[Latency]) VALUES ('" & clientdata & "','" & ipadd & "')"
[/size][size=2][color=#0000ff]Dim[/color][/size][size=2] objDataAdapter [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] OleDb.OleDbDataAdapter(sSQL, conName2)
[/size][size=2][color=#0000ff]Dim[/color][/size][size=2] cmd [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] OleDb.OleDbCommand(sSQL, conName2)
[/size][size=2][color=#0000ff]Dim[/color][/size][size=2] sqlrep [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]Integer
[/color][/size][size=2]sqlrep = cmd.ExecuteNonQuery()
[/size][size=2][color=#0000ff]Catch[/color][/size][size=2] ex [/size][size=2][color=#0000ff]As[/color][/size][size=2] Exception
System.Console.WriteLine(ex.ToString)
[/size][size=2][color=#0000ff]End[/color][/size][size=2] [/size][size=2][color=#0000ff]Try
[/color][/size][size=2]conName2.Close()
[/size][size=2][color=#008000][/color][/size][size=2][color=#008000]
[/color][/size][size=2][/size][size=2][color=#0000ff]Dim[/color][/size][size=2] sendBytes [/size][size=2][color=#0000ff]As[/color][/size][size=2] [Byte]() = Encoding.ASCII.GetBytes(clientdata)
networkStream.Write(sendBytes, 0, sendBytes.Length)
Console.WriteLine(("Message Sent /> : " + clientdata))
tcpClient.Close()
Console.WriteLine("exit")
Console.ReadLine()
[/size][size=2][color=#0000ff]Catch[/color][/size][size=2] e [/size][size=2][color=#0000ff]As[/color][/size][size=2] Exception
Console.WriteLine(e.ToString())
Console.ReadLine()
[/size][size=2][color=#0000ff]End[/color][/size][size=2] [/size][size=2][color=#0000ff]Try
[/color][/size][size=2][/size][size=2][color=#0000ff]End[/color][/size][size=2] [/size][size=2][color=#0000ff]While
[/color][/size][size=2]TcpListener.Stop()
[/size]