TCP Server/Client StreamReader.Readline() -> Verbindung bricht ab

  • C#

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    TCP Server/Client StreamReader.Readline() -> Verbindung bricht ab

    Hallo,

    ich versuche gerade eine Client / Server Kommunikation auf die Beine zu stellen. Also beim starten des Programmes sollte sich der Client mit dem Server verbinden und befehle die der Server ihm
    gibt entgegennehmen und wenn nötig auch antworten.

    Soweit läufts nicht schlecht also der client kann sich schonmal mit dem server verbinden und der server sendet auch eine nachricht aber sobald ich im client die

    C#-Quellcode

    1. StreamReader.ReadLine()
    Methode aufrufe bricht die Verbindung ab.



    C#-Quellcode

    1. using System;
    2. using System.Collections.Generic;
    3. using System.ComponentModel;
    4. using System.Data;
    5. using System.Drawing;
    6. using System.Linq;
    7. using System.Text;
    8. using System.Threading.Tasks;
    9. using System.Windows.Forms;
    10. using System.Net.Sockets;
    11. using System.IO;
    12. using System.Management;
    13. using System.Threading;
    14. namespace client
    15. {
    16. public partial class Form1 : Form
    17. {
    18. public TcpClient tcpClient;
    19. private NetworkStream stream;
    20. private StreamWriter streamw;
    21. private StreamReader streamr;
    22. private Thread t;
    23. private delegate void dTest(string s);
    24. public Form1()
    25. {
    26. InitializeComponent();
    27. tcpClient = new TcpClient();
    28. t = new Thread(new ThreadStart(Listen));
    29. }
    30. private void Listen()
    31. {
    32. while (tcpClient.Connected)
    33. {
    34. // sobald ich streamr.Readline() aufrufe wird die verbindung unterbrochen!
    35. MessageBox.Show(streamr.ReadLine());
    36. }
    37. }
    38. private void button1_Click(object sender, EventArgs e)
    39. {
    40. tcpClient.Connect(textBox1.Text, 8000);
    41. if (tcpClient.Connected)
    42. {
    43. stream = tcpClient.GetStream();
    44. streamw = new StreamWriter(stream);
    45. streamr = new StreamReader(stream);
    46. t.Start();
    47. }
    48. }
    49. }
    50. }


    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    @mox Jou.

    windowsfan schrieb:

    C#-Quellcode

    1. MessageBox.Show(streamr.ReadLine());
    Ich denke mal, Du rennst da in ein Timeout.
    Machst Du Console.WriteLine(streamr.ReadLine());
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!