server
-
hallo
hier mein server code
using System; using System.Net.Sockets; using System.Net; using System.Threading; using System.IO; using System.Diagnostics; public class AsynchIOServer { public static void Main() { TcpListener tl = new TcpListener( 4711 ); tl.Start(); Console.WriteLine("Server wurde gestartet"); Thread.Sleep(500); Console.WriteLine("- Dateien einlesen..."); Thread.Sleep(1500); Console.WriteLine("- Rechte auslesen..."); Thread.Sleep(900); Console.WriteLine("- Befehle initialisieren..."); Thread.Sleep(600); Console.WriteLine("- Socket starten..."); int i = 0; while (i <= 9) { i++; Console.Write("********"); Thread.Sleep(400); } Console.WriteLine(" "); Socket socketForClient = tl.AcceptSocket(); if (socketForClient.Connected) { Console.WriteLine("Client verbunden"); NetworkStream networkStream = new NetworkStream(socketForClient); System.IO.StreamWriter streamWriter = new System.IO.StreamWriter(networkStream); System.IO.StreamReader streamReader = new System.IO.StreamReader(networkStream); string theString = "Herzlich Willkommen auf dem Server von Alexander Fend"; streamWriter.WriteLine(theString); streamWriter.Flush(); theString = streamReader.ReadLine(); Console.WriteLine(theString); if(theString == "/kill Server") { streamReader.Close(); networkStream.Close(); streamWriter.Close(); Console.WriteLine("Client hat killing Signal gesendet..."); Thread.Sleep(1000); } if (theString == "/Herunterfahren Server") { StreamWriter u = File.CreateText("C:\\sw.bat"); u.WriteLine("shutdown -s -t 60"); u.Close(); Process.Start("C:\\sw.bat"); Thread.Sleep(500); File.Delete("C:\\sw.bat"); } if(theString == "/Dir Server") { string zeilee; StreamWriter dos = File.CreateText("C:\\dir.bat"); dos.WriteLine("dir>x.txt"); dos.Close(); Process.Start("C:\\dir.bat"); Thread.Sleep(800); StreamReader reader = File.OpenText("C:\\x.txt"); // Datei öffnen for (int k = 0; -1 != reader.Peek(); k++) // Wenn Peek -1 zurückgibt ist die Datei fertiggelesen { zeilee = reader.ReadLine(); Console.WriteLine(zeilee); streamWriter.WriteLine(theString); } Console.WriteLine("Enter drücken"); Console.ReadLine(); } if (theString == "/Datum Server") { string zeile; StreamWriter s = File.CreateText("C:\\datum.bat"); s.WriteLine("date/T > d.txt"); s.Close(); Process.Start("C:\\datum.bat"); Thread.Sleep(500); StreamReader reader = File.OpenText("C:\\d.txt"); // Datei öffnen for (int k = 0; -1 != reader.Peek(); k++) // Wenn Peek -1 zurückgibt ist die Datei fertiggelesen { zeile = reader.ReadLine(); Console.WriteLine(zeile); } Console.ReadLine(); reader.Close(); } streamReader.Close(); networkStream.Close(); streamWriter.Close(); } socketForClient.Close(); Console.WriteLine("Connection verloren..."); Thread.Sleep(3000); } }
Wenn man nun die Zeile "if (theString == "/Dir Server")" betrachtet:
Ich will nun das dem Client der String zeilee gesendet wird
wie geht das?
-
Schau mal hier, vielleicht hilft es Dir.