Hallo,
ich habe das Problem wenn ich die Funktion "endlos()" in "Form1_Load" starten möchte: startet die Anwendung, die WINDOWS FORM wird aber nicht angezeigt.
Die WINDOWS FORM wird nur angezeigt wenn ich die Zeile "endlos(); auskommentiere (// endlos();).
Sorry für die vielen auskommentiertenZeilen.
Was ist da falsch mit meinem Aufruf von der Funktion "endlos()" ?
MfG
Juergen B.
ich habe das Problem wenn ich die Funktion "endlos()" in "Form1_Load" starten möchte: startet die Anwendung, die WINDOWS FORM wird aber nicht angezeigt.
Die WINDOWS FORM wird nur angezeigt wenn ich die Zeile "endlos(); auskommentiere (// endlos();).
C#-Quellcode
- // Programm: Steuerzentrale_01 (C#)
- // Datum: 21.02.2017
- // Vorlage von:
- // https://www.codeproject.com/Articles/10649/An-Introduction-to-Socket-Programming-in-NET-using
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using System.Threading;
- using System.IO;
- using System.Net;
- using System.Net.Sockets;
- using System.Configuration;
- using System.Timers;
- namespace Steuerzentrale_01
- {
- public partial class Form1 : Form
- {
- static TcpListener listener;
- const int LIMIT = 5; //5 concurrent clients
- private static System.Timers.Timer aTimer;
- public Form1()
- {
- InitializeComponent();
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- SetTimer();
- // Sub Endlos starten
- endlos();
- label3.Text = "Hallo";
- }
- private void endlos()
- {
- aTimer.Stop();
- aTimer.Dispose();
- label3.Text = "Sub Endlos gestartet";
- Int32 port = 54399;
- IPAddress localAddr = IPAddress.Parse("192.168.1.15");
- listener = new TcpListener(localAddr, port);
- listener.Start();
- //Console.WriteLine("Server mounted, listening to port {0}", port);
- textBox1.Text = "Server mounted, listening to port " + port;
- while (true)
- {
- Socket soc = listener.AcceptSocket();
- //soc.SetSocketOption(SocketOptionLevel.Socket,
- // SocketOptionName.ReceiveTimeout,10000);
- textBox1.Text = "Connected: " + soc.RemoteEndPoint;
- try
- {
- Stream s = new NetworkStream(soc);
- StreamReader sr = new StreamReader(s);
- StreamWriter sw = new StreamWriter(s);
- sw.AutoFlush = true; // enable automatic flushing
- //sw.WriteLine("{0} Employees available", ConfigurationSettings.AppSettings);
- //textBox1.Text = "Employees available" + ConfigurationSettings.AppSettings;
- //Console.WriteLine("Received: {0}", sr.Read() );
- //sw.Write(sr.Read());
- while (true)
- {
- string name = sr.ReadLine();
- //Console.WriteLine("Received: {0}", name);
- textBox2.Text = "Received: {0}"+ name;
- //if (name == "" || name == null) break;
- //string job = ConfigurationSettings.AppSettings[name];
- //if (job == null) job = "No such employee";
- sw.WriteLine(name);
- }
- s.Close();
- }
- catch (Exception e)
- {
- Console.WriteLine(e.Message);
- }
- //Console.WriteLine("Disconnected: {0}", soc.RemoteEndPoint);
- textBox1.Text = "Disconnected: " + soc.RemoteEndPoint;
- soc.Close();
- }
- }
- private void button1_Click(object sender, EventArgs e)
- {
- Close();
- }
- private static Task HandleTimer()
- {
- //Form1 mc = new Form1();
- Console.WriteLine("\nHandler not implemented...");
- //mc.label3.Text = "\nHandler not implemented...";
- throw new NotImplementedException();
- }
- private static void SetTimer()
- {
- //Form1 mc = new Form1();
- // Create a timer with a two second interval.
- aTimer = new System.Timers.Timer(2000);
- // Hook up the Elapsed event for the timer.
- aTimer.Elapsed += OnTimedEvent;
- aTimer.AutoReset = true;
- aTimer.Enabled = true;
- //mc.label3.Text = "Timer Ende";
- }
- private static void OnTimedEvent(Object source, ElapsedEventArgs e)
- {
- Console.WriteLine("The Elapsed event was raised at {0:HH:mm:ss.fff}",
- e.SignalTime);
- }
- private void changeText_Click(object sender, EventArgs e)
- {
- label2.Text = "Time " + DateTime.Now.ToLongTimeString();
- }
- private void changeColor_Click(object sender, EventArgs e)
- {
- Random randomColor = new Random();
- label2.ForeColor = Color.FromArgb(randomColor.Next(0, 256),
- randomColor.Next(0, 256), randomColor.Next(0, 256));
- }
- }
- }
Sorry für die vielen auskommentiertenZeilen.
Was ist da falsch mit meinem Aufruf von der Funktion "endlos()" ?
MfG
Juergen B.