habraman
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Есть 2 программы, клиент и сервер. Код Сервера: Код: Imports System.Net.Sockets Imports System.Text Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim serverSocket As New TcpListener(1009) Dim requestCount As Integer Dim clientSocket As New TcpClient serverSocket.Start() ListBox1.Items.Add(">> Сервер запущен") ListBox1.Items.Add(">> Порт 1009 открыт") clientSocket = serverSocket.AcceptTcpClient() ListBox1.Items.Add(">> Клиент присоединился") requestCount = 0 While (True) Try requestCount = requestCount + 1 Dim networkStream As NetworkStream = clientSocket.GetStream() Dim bytesFrom(10024) As Byte networkStream.Read(bytesFrom, 0, CInt(clientSocket.ReceiveBufferSize)) Dim dataFromClient As String = System.Text.Encoding.ASCII.GetString(bytesFrom) dataFromClient.Substring(0, dataFromClient.IndexOf("$")) MsgBox("Data from client - " + dataFromClient) Dim serverResponse As String = "Server response " + Convert.ToString(requestCount) Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes(serverResponse) networkStream.Write(sendBytes, 0, sendBytes.Length) networkStream.Flush() MsgBox(serverResponse) Catch ex As Exception MsgBox(ex.ToString) End Try End While clientSocket.Close() serverSocket.Stop() MsgBox("Exit") End Sub | и код Клиента: Код: Imports System.Net.Sockets Imports System.Text Public Class Form1 Dim clientSocket As New System.Net.Sockets.TcpClient() Dim serverStream As NetworkStream Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Then MsgBox("Заполните все поля!", MsgBoxStyle.OkOnly) Else clientSocket.Connect(TextBox1.Text, TextBox3.Text) Dim serverStream As NetworkStream = clientSocket.GetStream() Dim outStream As Byte() = System.Text.Encoding.ASCII.GetBytes("123$") serverStream.Write(outStream, 0, outStream.Length) serverStream.Flush() Dim inStream(10024) As Byte serverStream.Read(inStream, 0, CInt(clientSocket.ReceiveBufferSize)) Dim returndata As String = System.Text.Encoding.ASCII.GetString(inStream) MsgBox("Data from Server : " + returndata) End If End Sub End Class | Подскажите, как сделать так, чтобы на сервер отправлялся текст из текстбокса и там соответственно в текстбоксе выводился. На данный момент на сервере выводится текст 123 в MsgBox'е. Я так подозреваю, что решение этой проблемы кроется где-то в этом районе Код: Dim outStream As Byte() = System.Text.Encoding.ASCII.GetBytes("123$") serverStream.Write(outStream, 0, outStream.Length) |
|