Autor Beitrag
Airmetz
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 23.09.10 21:56 
Ich bin Programmier Anfänger und habe vor,
über das Netzwerk Hexdatein auf ein Deviceserver zu senden
der Deviceserver befindet sich im netzwerk und hat die IP= "192.168.100.100"
und die Datein die er geschickt bekommen "will" kann er auf Port= "1002" entgegen nehmen.

Ich habe bisher den Folgenden Quelltext dafür "konzipiert":



_____________________________________________

ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
 QUELLE = http://www.codeproject.com/KB/IP/tcpclientserver.aspx :)
using System;
using System.IO;
using System.Net;
using System.Text;
using System.Net.Sockets;


public class clnt
{

    public static void Main()
    {

        try
        {
            //Erstellt einen neuen TCPCLient
            TcpClient tcpclnt = new TcpClient();
            Console.WriteLine("Verbindet.....");

            //Versucht eine Verbindung zu IP,Port aufzubauen
            tcpclnt.Connect("192.168.100.100"1002);
            Console.WriteLine("Verbunden");
            Console.Write("Gebe den Text an, der übertragen werden soll : ");


            String str = Console.ReadLine();
            Stream stm = tcpclnt.GetStream();


            ASCIIEncoding asen = new ASCIIEncoding();
            byte[] ba = asen.GetBytes(str);
            Console.WriteLine("Überträgt den Text.....");


            stm.Write(ba, 0, ba.Length);


            byte[] bb = new byte[100];
            int k = stm.Read(bb, 0100);


            for (int i = 0; i < k; i++)
                Console.Write(Convert.ToChar(bb[i]));

            tcpclnt.Close();
        }


        catch (Exception e)
        {
            Console.WriteLine("Fehler:\n" +e.StackTrace);
        }
    }
}

_____________________________________________

Doch da meine Consolenanwendung nicht weiter als:

tcpclnt.Connect("192.168.100.100", 1002);

durchgeführt wird habe ich das gefühl ich habe etwas falsch gemacht,
bitte helft mir :)
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Do 23.09.10 22:07 
Hallo,

hängt er sich an der Connect-Anweisung auf? Dann nimmt die Gegenstelle die Verbindung wohl nicht an. Wenn du eine gewisse Zeit wartest, müsste die Methode abbrechen und eine Exception werfen. Da du ja einen catch-Block definiert hast, wird dir dann eine genaue Fehlerbeschreibung angezeigt.

Noch was: Probier mal 192.168.100.100:1002 im Browser zu öffnen. Das sollte dir auch weiterhelfen können.

Für diesen Beitrag haben gedankt: Airmetz
Airmetz Threadstarter
Hält's aus hier
Beiträge: 14



BeitragVerfasst: Do 23.09.10 22:43 
War meine eigene blödheit
Ich habe das TCP-Server Tool falsch
eingestellt, die verbindung war nicht offen.
:D
Naja Aber trotzdem vielen Dank ;)