У меня проблема с TCP-клиентом, над которым я работаю. По какой-то причине клиент, кажется, подключается, но он ничего не читает в окне вывода. Вот код:Проблемы с простым TCP-клиентом C# Форма Windows
private void button1_Click(object sender, EventArgs e)
{
string host = textBox1.Text;
int port;
port = Convert.ToInt32(textBox2.Text);
port = int.Parse(textBox2.Text);
string sendText = textBox3.Text;
Socket connectSocket = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
connectSocket.Connect(host, port);
System.IO.StreamReader connectionRead
= new System.IO.StreamReader(new NetworkStream(connectSocket));
connectSocket.Send(System.Text.Encoding.UTF8.GetBytes(sendText));
while (connectionRead.Peek() > 0)
{
this.textBox4.AppendText(connectionRead.ReadLine() + "\r\n");
}
connectSocket.Close();
}
Я сожалею об именах объектов, я сделал это в немного спешке. Это не должно быть слишком сложно понять. Я беру пользовательский ввод из textBox (ов) и помещаю его в переменные.
Я, кажется, застрять на:
while (connectionRead.Peek() > 0)
{
this.textBox4.AppendText(connectionRead.ReadLine() + "\r\n");
}
Здесь, программа замерзает в течение примерно 20 секунд, затем разблокируется без выхода (программа не откажет).
Любая помощь очень ценится!
Есть ли другая сторона, отправляющая какие-либо данные? – McKay
Конкретно, другая сторона отправляет символ NewLine? – I4V
Я не уверен, как сказать, посылает ли другая сторона что-либо. Это мой первый проект TCP, LOL. –