Laden...
J
jstuch myCSharp.de - Member
Netzwerk & System -Administrator Bonn Dabei seit 06.12.2005 31 Beiträge
Benutzerbeschreibung

Forenbeiträge von jstuch Ingesamt 31 Beiträge

05.12.2006 - 13:35 Uhr

Hi,

habe mir mal dein Programm runter geladen, aber die Überwachung scheint nicht zu funktionieren. Frag mich nicht warum.

Zum eigentlichen Problem:

Ich will eine Software schreiben die die Drucker am Win2k3 PrintServer überwacht. Die Ereignisanzeige auswerten ist natürlich kein Problem, doch möchte ich noch gern wissen auf welchen Format und ob SCharz/Weiss oder Farbe gedruckt wurde.
Soll quasi diese Software ( http://www.prnwatch.com/okpw.html ) ersetzen. Am eigentlichen Drucker möchte ich weder Anschluss oder eine Umleitung einrichten. Dort laufen alle Drucker der Organisation zusammen und sind an alle Benutzer verteilt. Würde also viel Arbeit bedeuten dort was umzustellen.

Hat da jemand eine Lösung für?

14.09.2006 - 19:05 Uhr

Hi,

ich hab ein wenig auf Amazon rumgeschaut und bin auf 2 Bücher aufmerksam geworden.

http://www.amazon.de/Beginning-Programming-Premier-Development-Paperback/dp/1592005179/ref=cm_lm_fullview_prod_5/303-9853929-3031427?ie=UTF8

http://www.amazon.de/Managed-DirectX-9-Tom-Miller/dp/0672325969/ref=pd_bxgy__img_b/303-9853929-3031427?ie=UTF8

Kennt jemand diese Bücher und kann etwas darüber sagen? Ich hab in der Spieleprogrammierung noch nichts gemacht, will aber damit jetzt mal anfangen.
Windows Programm Entwicklung funktioniert bisher ganz gut. Also der Einstieg ist geschafft denke ich 🙂

Grüße

Julian

29.06.2006 - 16:10 Uhr

Hi,

wie kann ich solch ein Layout erstellen? Es geht mir speziell um ide Titelleiste.

http://www.microsoft.com/library/media/1033/office/images/preview/programs/outlook/65533_800x597_outlook.jpg

Klar kann ich die Form auf BorderStyle None setzen und dann oben und unten eine Picturebox setzen und die mit dem Verlauf blau machen. Dann hab ich jedoch kein Eintrag mehr in der Taskleiste unten und bei Vollbild wird alles überblendet.

Wie würdet ihr das machen?

mfg

Julian

26.06.2006 - 15:08 Uhr

Danke erstmal.

ich werde mir die Empfehlungen mal näher anschauen und ggf. melden.

Grüße

Julian

25.06.2006 - 22:05 Uhr

Hi,

ich hoffe ich bin in dem richtigen Forum gelandet. Zum Thema:

Einleitung:

Bisher setzen wir in der Firma zur Inventarisierung sowie zur Ticket und Auftragsbearbeitung eine Weboberfläche (PHP und MYSQL) ein.
Da ich damals an verschiedene Dinge nicht gedacht habe (DB Design, Layout), sind wir an die Grenzen gestoßen und wollen ein neue Programm in C# entwickeln. Sprich von Grund auf alles neu.

Zum Problem:

Da ich das Programm zu späterem Zeitpunkt das Programm mit einer Update Routine
erweitern möchte, kam ich auf die Idee das Programm in viele Programme aufzuteilen. Damit kann der Updateprozess kurz gehalten werden.
Sprich für jeden Bereich eine eigene Datei.
Auftragsverwaltung, Hardware, Software usw.

Macht man sowas mit dll Dateien oder wie geht man da am Besten vor? Ziel ist es halt immer nur den bearbeitet Programmteil upzudaten.

Zum Layout des Programms möchte ich mich gern an Outlook halten. Auf der Linken Seite halt eine Treeview in der ich die Programmteile auswählen kann. Diese soll dann halt dynamisch geladen werden. JHe nachdem was der Benutzer für Rechte hat.

Jetzt noch eine Frage die vielleicht nicht ganz hier ein passt aber doch mit dem Thema zusammenhängt.
In Outlook 2003 ist das linke Menü ja eine Treeview wenn ich mich nicht irre. Unter diesem Fenster sind ja Buttons wie z.B. Email; Kalender; Kontakte.

Sind das ganz normale Buttons? Ich möchte halt das Design übernehmen.

mit sommerlichen Grüßen

Julian

17.02.2006 - 10:03 Uhr

Hi,

ich hab mir jetzt mit dem "EventLog" beschäftigt und stehe nun vor der Frage wie ich rausbekomme was für Eventlogs ich im System habe. Application, System, und Security sind ja Standard. Wie bekomme ich noch heraus was für Logs es noch im System gibt?

Bisher habe ich herausgefunden das die hier drin stehen HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog.

Gibt es aber nicht eine einfachere Möglichkeit daran zu kommen? Direkt über das Eventlog?

danke

mfg

12.12.2005 - 19:33 Uhr

Wie löse ich das am besten?

Die Klasse Clients löschen und Funktionen in der Klasse FSProxy machen?

mfg

12.12.2005 - 18:56 Uhr

Hallo,

von einem Problem mit Arraylist bin ich zum Problem mit TCP Traffic gekommen. Dazu den Link:

Arraylist und Klassen

Problem ist folgendes:

Der Traffic von Server zu Client wird nicht gesendet. Sobald ich das Programm beende wird der Traffic abgesendet. Empfangen wird alles.

Könnt ihr mir da weiterhelfen?

12.12.2005 - 18:07 Uhr

Ich hab gerade das Konsolen Programm auf Socket Transfer umgeschrieben. Mit gleichem Effekt.

Langsam weiß ich nicht mehr weiter.

mfg

12.12.2005 - 17:06 Uhr

Also ich hab jetzt sogar die Klasse in ein Konsolen programm eingebaut.
Gleicher Effekt.
Siehe auch Anhang.

Zu dem Programm verbinde ich mit dem Programm "BlueBit`s Port Tool". Damit kann man zu jeder beliebigen Ip und beliebigen Port verbinden. Das gibt mir den Traffic aus.

Es will einfach nicht direkt abschicken.


  class cProxy
    {
        // Variablen
        private IPAddress _RemoteIP;
        private Int32 _RemotePort;
        private Int32 _LocalPort;

        private TcpListener _clientListener;
        private bool _allStop = false;
        private Thread _Listener;
        private Thread _Transfer;
        private ArrayList _clientList;

        public void initialize(IPAddress address, Int32 rPort, Int32 lPort)
        {
            _RemoteIP = address;
            _RemotePort = rPort;
            _LocalPort = lPort;

            // Thread für Datentransfer starten
            this._Listener = new Thread(new ThreadStart(this._listen));
            this._Listener.Start();
        }

        public void destruct()
        {
            // Threads beenden
            _allStop = true;
        }


        // Funktions Thread um auf neue Clients zu warten
        private void _listen()
        {
            // Array anlegen um Clients darin aufzubewahren
            _clientList = new ArrayList();

            // Neuer Listener auf jeder IPAdresse und dem Port _LocalPort
            this._clientListener = new TcpListener(IPAddress.Any, _LocalPort);
            this._clientListener.Start();

            this._Transfer = new Thread(new ThreadStart(this._transfer));
            this._Transfer.Start();

            do
            {
                if (_clientListener.Pending())
                {
                    // Clients im Array ablegen und eine Klasse von jedem Client erstellen
                    lock (_clientList.SyncRoot)
                    {
                        TcpClient client = this._clientListener.AcceptTcpClient();
                        int i = _clientList.Add(new cClient());
                        ((cClient)_clientList[i]).initialize(client, i);
                    }
                }
                Thread.Sleep(100);
            } while (_allStop == false);
        }


        public void _transfer()
        {
            do
            {
                foreach (Object client in _clientList)
                {
                    ((cClient)client).send("Da bin ich");

                }
                Thread.Sleep(1000);

                // Dieser Thread läuft aus und Clients werden nicht mehr bedient.
            } while (_allStop == false);
        }

        class cClient
        {
            private NetworkStream _stream;

            private TcpClient _client;
            private int _clientNumber;
            //private bool            _isActive = true;

            public void initialize(TcpClient value, int number)
            {
                _client = value;
                _clientNumber = number;
                _stream = _client.GetStream();
            }

            public void send(string value)
            {
                if (_stream.CanWrite)
                {
                    Console.WriteLine("gesendet");
                    byte[] msg = System.Text.Encoding.Default.GetBytes(value);
                    _stream.Write(msg, 0, msg.Length);
                    _stream.Flush();
                }

                if (_stream.CanRead)
                {
                    if (_stream.DataAvailable)
                    {
                        byte[] bytes = new byte[_client.ReceiveBufferSize];
                        _stream.Read(bytes, 0, (int)_client.ReceiveBufferSize);
                        string returndata = System.Text.Encoding.Default.GetString(bytes);
                        Console.WriteLine(returndata);
                    }
                }


            }

            public void recieve()
            {
                //byte[] bytes = new byte[_client.ReceiveBufferSize];
                // return _stream.Read(bytes, 0, _client.ReceiveBufferSize);                
            }
        }
    }

Empfangen wird immer. Auch direkt. Nur gesendet wird beim Programm Schliessen.

Hat jemand noch eine Idee ?

12.12.2005 - 15:09 Uhr

Heisst das, daß dies in meinem Fall nichts bringt?


                byte[] msg = System.Text.Encoding.Default.GetBytes(value);
                _stream.Write(msg, 0, msg.Length);
                NetworkStream.Flush();

Error 1 An object reference is required for the nonstatic field, method, or property 'System.IO.Stream.Flush()'

Das bringt nix.

mfg

12.12.2005 - 14:38 Uhr


            public void send(string value)
            {
                byte[] msg = System.Text.Encoding.Default.GetBytes(value);
                _stream.Write(msg, 0, msg.Length);
                _stream.Flush();
            }


Hat leider nicht gebracht. Es funktioniert nciht.

12.12.2005 - 14:09 Uhr

So, hab es nun endlich doch hinbekommen. Danke noch einmal für die Links. Da bin ich fündig geworden.

Nun ein anderes Problem. Das senden Funktioniert und es kommt auch an, aber anscheind erst wenn ich das Programm schliesse. Also es wird nichts übertragen.


        public void _transfer()
        {
            do
            {
                foreach (Object client in _clientList)
                {
                    ((cClient)client).send("Da bin ich");
                }
                Thread.Sleep(1000);

            // Dieser Thread läuft aus und Clients werden nicht mehr bedient.
            } while (_allStop == false);             
        }

        class cClient
        {
            private NetworkStream   _stream;

            private TcpClient       _client;
            private int             _clientNumber;
            //private bool            _isActive = true;

            public void initialize(TcpClient value, int number)
            {
                _client         = value;
                _clientNumber   = number;
                _stream         = _client.GetStream();
            }

            public void send(string value)
            {
                byte[] msg = System.Text.Encoding.Default.GetBytes(value);
                _stream.Write(msg, 0, msg.Length);
            }

            public void recieve()
            {
                //byte[] bytes = new byte[_client.ReceiveBufferSize];
               // return _stream.Read(bytes, 0, _client.ReceiveBufferSize);                
            }
        }

Ich hab mal Haltepunkte gesetzt gehabt. Er geht auch in die Funktionen rein, aber gesendet wird nur beim Close des Programms. Weiss jemand warum?

mfg

12.12.2005 - 13:20 Uhr

ich weiss, da ist der wurm drin. hab im moment kein Plan wie rum das da rein soll 🙂

mir Raucht der Kopf.

mfg

12.12.2005 - 12:48 Uhr

Hi,

ich möchte in einem Arraylist meine Klassen für die beliebig vielen Clients ablegen.
Irgendwie bekomm ich das nicht hin. Ich weiss nicht was wo hin gehört.

Der markierte Bereich ist das Prob 🙂


namespace FSProxy
{ 
    class cProxy
    {
        // Variablen
        private IPAddress   _RemoteIP;
        private Int32       _RemotePort;
        private Int32       _LocalPort;

        private TcpListener _clientListener;
        private bool        _allStop = false;
        private Thread      _Listener;
        private Thread      _Transfer;
        private ArrayList   _clientList;


        public void initialize(IPAddress address, Int32 rPort, Int32 lPort)
        {
            _RemoteIP = address;
            _RemotePort = rPort;
            _LocalPort = lPort;

            // Thread für Datentransfer starten
            this._Listener = new Thread(new ThreadStart(this._listen));
            this._Listener.Start();
        }

        public void destruct()
        {
            _allStop = true;
        }


        // Funktions Thread um auf neue Clients zu warten
        private void _listen()
        {
            // Array anlegen um Clients darin aufzubewahren
            _clientList = new ArrayList();

            // Neuer Listener auf jeder IPAdresse und dem Port _LocalPort
            this._clientListener = new TcpListener(IPAddress.Any, _LocalPort);
            this._clientListener.Start();

            this._Transfer = new Thread(new ThreadStart(this._transfer));
            this._Transfer.Start();

            do
            {

##########################################
########## Start ############################

                if (_clientListener.Pending())
                {
                    // Clients im Array ablegen und eine Klasse von jedem Client erstellen
                    TcpClient client = this._clientListener.AcceptTcpClient();
                    int adr = _clientList.Add(client);
                    _clientList[adr] = new cClient();
                    ((cClient)_clientList[adr]).initialize(client, adr);
                }

############## Ende #######################
#########################################
                Thread.Sleep(100);
            } while (_allStop == false);   
        }


        public void _transfer()
        {
            do
            {

##########################################
########## Start ############################

                foreach (TcpClient client_number in _clientList)
                {
                    ((cClient)_clientList[client_number]).send("ich bin da");
                }

############## Ende #######################
#########################################

                Thread.Sleep(1000);

            // Dieser Thread läuft aus und Clients werden nicht mehr bedient.
            } while (_allStop == false);             
        }

        class cClient
        {
            private NetworkStream   _stream;

            private TcpClient       _client;
            private int             _clientNumber;
            //private bool            _isActive = true;

            public void initialize(TcpClient value, int number)
            {
                _client         = value;
                _clientNumber   = number;
                _stream         = _client.GetStream();
            }

            public void send(string value)
            {
                byte[] msg = System.Text.Encoding.ASCII.GetBytes(value);
                _stream.Write(msg, 0, msg.Length);
            }

            public void recieve()
            {
                //byte[] bytes = new byte[_client.ReceiveBufferSize];
               // return _stream.Read(bytes, 0, _client.ReceiveBufferSize);                
            }
        }
    }
}


Edit: Fett schreiben im Code ging nicht. Daher nochmal die Markierung

Ein Dankeschön schon einmal an dieser Stelle.

mfg
Julian

11.12.2005 - 13:12 Uhr

wenn ich das event nutze um im mainform was zu ändern, dann muss ich ja was mit begininvoke machen.


        public void ThisMyEvent(string value)
        {
            //listBox1.Items.Add(value);
            listBox1.BeginInvoke(
        }

Kann mir jemand sagenwas da hin muss?

11.12.2005 - 12:32 Uhr

Das Programm fungiert wie du richtig erkannt hast als Brücke.
Ein Client (nicht von mir) verbindet über mein Programm zu einem Server (nicht von mir) im Internet.
Da ich aber mit einem weiteren Programm (von mir) die Daten auch brauche, lese ich die einfach an der Brücke aus.
So hab ich mir das jedenfalls gedacht. Ich denke auch, dass das funktionieren wird.

Mit den Events werde ich jetzt mal schauen.

danke

11.12.2005 - 11:56 Uhr

Hi,

das hier ist eine funktion in meiner Server Klasse. Diese wird als seperater Thread gestartet.


        // ########################################################
        // Desc: Funktion um Daten zwischen Client über den 
        //       Proxy (Das Prog hier) und dem Server auszutauschen
        // Mods: 
        // ########################################################
        private void transfer()
        {
            this._Client_to_Server = new TcpListener(IPAddress.Any, 6809);
            this._Client_to_Server.Start();

            do
            {
                bool iHadWork = false;
                // Schauen ob Clients anfragen
                if (this._Client_to_Server.Pending())
                {
                    TcpClient client = this._Client_to_Server.AcceptTcpClient();
                    this._HtClients.Add(client, client.GetStream());
                    iHadWork = true;

                    this._Server_To_Server = new TcpClient();
                    this._Server_To_Server.Connect(_RemoteServer, _Port);
                    this._Server_To_Server_Stream = this._Server_To_Server.GetStream();
                }
                else
                {
                    //prüfe ob für offene Clients Daten da sind
                    foreach (TcpClient client in this._HtClients.Keys)
                    {
                        NetworkStream _Client_To_Server_Stream = this._HtClients[client] as NetworkStream;
                        if (_Client_To_Server_Stream.DataAvailable)
                        {
                            //Transfer von Client über Proxy zum Server
                            byte[] bytes = new byte[client.ReceiveBufferSize];
                            _Client_To_Server_Stream.Read(bytes, 0, client.ReceiveBufferSize);
                            _Server_To_Server_Stream.Write(bytes, 0, client.ReceiveBufferSize);
                            iHadWork = true;
                        }

                        if (_Server_To_Server_Stream.DataAvailable)
                        {
                            // Transfer von Client über Proxy zum Server
                            byte[] bytes = new byte[_Server_To_Server.ReceiveBufferSize];
                            _Server_To_Server_Stream.Read(bytes, 0, _Server_To_Server.ReceiveBufferSize);
                            _Client_To_Server_Stream.Write(bytes, 0, _Server_To_Server.ReceiveBufferSize);
                            iHadWork = true;
                        }
                    }
                }
                if (!iHadWork)
                {
                    Thread.Sleep(100);
                }
            } while (!this._ListenerStop);

            foreach (TcpClient client in this._HtClients.Keys)
            {
                NetworkStream ns = this._HtClients[client] as NetworkStream;
                ns.Close();
                client.Close();
            }
        }

Das funktioniert so weit auch schonmal. Ich werde nach einer kurzen Zeit aber vom Server getrennt. Das scheint mir an folgendem zu liegen.

Monitor per Etheral.

.
....
$CQEDDK_OBS:SERVER:IP
.................................................. -> und noch mehr Punkte.
#TMserver:EDDK_OBS:hereby

Da scheint anscheind der das Packet leer zu sein. Woran köönte das liegen? und Wie kann ich das am besten unterbinden?

Das war Das. Ich hab totale Probleme hier ein Event einzubauen. Ich hab hier im Forum schon vieles gelesen. Ich bekomm das einfach nicht hin. Ich will aus dieser Klasse im Form1 eine Listbox mit dem Inhalt füllen. Kann mir da einer helfen?

mfg

10.12.2005 - 21:14 Uhr

alles klar.

Man. Erst hier Posten um zu sehen das der Fehler am falsch gesetzten Sleep lag.

danke

10.12.2005 - 21:12 Uhr

Hi,

ich hab folgendes


        public void server()
        {
            // Neuer Listener auf Port 6809
            listener = new TcpListener(IPAddress.Any, 6809);
            listener.Start();

            // Listen Thread initialisieren und starten
            listen_th = new Thread(new ThreadStart(listen));
            listen_th.Start();
            

        }

        private void listen()
        {
            do
            {
                if (listener.Pending())
                {
                    client = listener.AcceptSocket();
                    Thread.Sleep(1000);
                }
            } while (true);
        }

Was kann ich machen um nicht bei 98% Auslastung zu fahren. Gibt es ja nicht eine andere Möglichkeit als mit so ner Endlosschleife?

10.12.2005 - 18:11 Uhr

Hi,

gibt es noch andere Möglichkeiten ausser TCPListener und TCPClient eine verbindung aufzubauen.
Sodass es möglich ist bei einer Anfrage vom Client direkt über den Server antworten kann. Ohne Rollentausch quasi.

mfg

10.12.2005 - 16:01 Uhr

Ich dank dir. Jetzt funktioniert alles wie gewollt.

Und das Forum ist echt super hier. Muss einfach mal gesagt werden!

10.12.2005 - 15:52 Uhr

Danke, der Fehler ist jetzt weg.

Kann nicht mehr viel sein.

  
    public partial class form1 : Form
    {
        public form1(Server localServer)
        {
            InitializeComponent();
            
        }

        private void stopServer_Click(object sender, EventArgs e)
        {
                
        }
    }

Nur ich komm da immer noch nid ran 8o

mfg

10.12.2005 - 15:37 Uhr

namespace FSProxy
{
public class Program
{

    /// <summary>  
    /// The main entry point for the application.  
    /// </summary>  
    [STAThread]  
    static void Main()  
    {  
        Server localServer = new Server();  
        localServer.server();     

        Application.EnableVisualStyles();  
        Application.SetCompatibleTextRenderingDefault(false);  
        Application.Run(new form1(localServer));  

        localServer.destroy();  

    }     
}  

}

Das habe ich jetzt. Im Server werden schon Threads verwendet.

Nur das will nicht so ganz:

namespace FSProxy
{
public partial class form1 : Form
{
public form1(Server localServer)
{
InitializeComponent();
}
}
}

Copy: Error 1 Inconsistent accessibility: parameter type 'TCPServer.Server' is less accessible than method 'FSProxy.form1.form1(TCPServer.Server)' D:!Julian\Visual Studio 2005\Projects\FSProxy\FSProxy\Form1.cs 17 16 FSProxy

Das bekomme ich da.

10.12.2005 - 15:19 Uhr

Das wird aufgeführt wenn das Programm startet.

namespace FSProxy
{
public class Program
{
private static Server localServer = null;
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new form1());
localServer = new Server();
localServer.server();
}
}
}

Jetzt würde ich gerne bei einem Click Event (Button auf Form1) auf Server zugreifen. Wie kann ich das am besten lösen?

danke

mfg Julian

07.12.2005 - 21:16 Uhr

public static void clientListen(TcpListener server)
{
TcpClient client = server.AcceptTcpClient();

        //TcpClient client = server.AcceptTcpClient();  
        //connected  
    }  

    public static void getData()  
    {  

    }  

    private void button1_Click(object sender, EventArgs e)  
    {    
        TcpListener server = new TcpListener(IPAddress.Any, 6809);  
        server.Start();  

        Thread thd1 = new Thread(new ThreadStart(clientListen(TcpListener server));  
        //thd1.Start();  
    }   

    in dem Thread &quot;clientListen&quot; ist ja server nicht bekannt und irgendwie will das mit der Übergabe nicht funktionieren. Könnt ihr mir helfen?
07.12.2005 - 13:57 Uhr

Daran habe ich auhc schon gedacht. Quasi mein Server als Proxy laufen lassen. Geht leider nur nicht, da ich kein Zugriff auf die Clients habe. Diese können nur zu dem Port 6809 connecten.

Ich muss also wirklich den Traffic abhören. Diese Lösung ist mir auch lieber.

mfg

07.12.2005 - 09:24 Uhr

Ich kann zu dem Server im Internet nur eine Verbindung aufbauen. Die wird aber von dem Client schon belegt. Ich muss also den Traffic abhören.

mfg

07.12.2005 - 09:05 Uhr

Das bruach ich ja nicht. den Traffic der da über die Leitung geht kenne ich ja. Ich möchte quasi Den Traffic selber Sniffen und den Traffic als Server weiterverarbeiten.

07.12.2005 - 09:00 Uhr

danke für die Hilfe.

Ich konnte huete Nacht nicht schlafen also hab ich schon einmal in die Tasten getippt. Rausgekommen ist auch eine Lösung mit TCPListener. Funktioniert auch. Hab mir da wohl zu viele Gedanken gemacht bezüglich der Übertragung.

Jetzt vielleicht noch ein anderes Problem. Server und Client kommunizieren auf Port 6809. Den muss ich abhören und dann die abgehörten Daten als seperaten Server für einen weiteren Client zur verfügung stellen. In die Verbindung zwischen der Programmen die auf Port kann ich nicht eingreifen. Ich muss quasi ein Port Monitorung machen.

Wie gehe ich das am Besten an?

mfg

06.12.2005 - 23:39 Uhr

Hi,

also um mein Problem zu schildern muss ich wohl ein wenig weiter ausholen.
Es gibt für den Flugsimulator ein Zusatz Programm mit dem es möglich ist über das Internet Online zu fliegen.
Mit diesem kann man zu Servern der jeweiligen verschiedenen Anbietern sich connecten. Ich möchte mir gerne meinen Eigenen Server schreiben mit dem ich selber auch Flugzeuge (Bots) erstellen kann. Sprich dann fliegen Leute am PC mit Computergesteuerten Bots zusammen.

Kommuniziert wird über den TCP Port 6809. Es wird alles in Klartext übermittelt. Eine Schnittstellenbeschreibung liegt mir vor.

Ich habe mir überlegt mit TCPListener (hab ich hier im Forum viel drüber gelesen) einen Server zu schreiben. Ist das möglich? Der Client selber ist in C++ geschrieben. Funktioniert dann die Kommunikation dann ohne Probleme?

danke schon einmal im Vorraus.

mfg Julian