无法在c#中使用TCP / IP套接字从机器接收数据

时间:2014-01-14 09:27:39

标签: c# sockets tcp ascii tcplistener

我有一台机器,我试图通过传递用户名和密码来使用TCP / IP进行连接。

根据机器文档,这是用户名和密码..

By default, the Panasonic NCP/TDE system requires a username/password (default:SMDR/PCCSMDR) to connect to the TCP/IP feed.

但是我无法将机器中的数据存入文本文件。我将数据跟踪到文本文件中,而不是正确的数据。

-

S

MDR

/PCCSMD

RSMDR

/PC

CSMDR

这些数据会不断地转储到文本文件中。这是我在c#中的代码

        ipaddress = "192.168.1.230";
        int port = int.Parse("2300");
        textfileSaveLocation = "D://vikas//call.txt";

        byte[] data = new byte[1024];
        string stringData;
        string input;

            IPAddress ipadd = IPAddress.Parse(ipaddress);
            IPEndPoint ipend = new IPEndPoint(ipadd,port);
            Socket sock = new Socket(AddressFamily.InterNetwork,SocketType.Stream, ProtocolType.Tcp);
            sock.NoDelay = false;
            try
            {
                sock.Connect(ipend);
                textBox4.AppendText("Connected to host" + "\r\n");
            }
            catch (Exception dfg)
            {
                textBox4.AppendText("Problem connecting to host" + "\r\n");
                textBox4.AppendText(dfg.ToString ()+"\r\n");
                return;
            }
            try
            {
                int recv = sock.Receive(data);
                stringData = Encoding.ASCII.GetString(data, 0, recv);
                textBox4.AppendText(stringData + "\r\n");
                while (true)
                {
                    Byte[] bBuf;
                    string buf;

                    Application.DoEvents();

                    buf = String.Format("{0}/{1}", "SMDR", "PCCSMDR");
                    bBuf = Encoding.ASCII.GetBytes(buf);
                    sock.Send(bBuf, 0, bBuf.Length, 0);     

                    data = new byte[1024];
                    recv = sock.Receive(data);
                    stringData = Encoding.ASCII.GetString(data, 0, recv);
                    textBox4.AppendText(stringData + "\r\n");
                    string df = "";
                    try
                    {
                        FileStream dr = new FileStream(textfileSaveLocation, FileMode.OpenOrCreate, FileAccess.Read, FileShare.ReadWrite);
                        StreamReader fg = new StreamReader(dr);
                        df = fg.ReadToEnd();
                        fg.Dispose();
                        dr.Dispose();
                    }
                    catch (Exception dfjdfs)
                    {
                    }
                    try
                    {
                        File.Delete(textfileSaveLocation);
                    }
                    catch (Exception jhu)
                    {
                    }
                    try
                    {

                        FileStream cd = new FileStream(textfileSaveLocation, FileMode.Create);
                        StreamWriter cdf = new StreamWriter(cd);
                        cdf.WriteLine (df);
                        cdf.WriteLine (stringData);
                        cdf.Dispose();
                        cd.Dispose();
                    }
                    catch (Exception hgy)
                    {
                    }
                }
                sock.Shutdown(SocketShutdown.Both);
                sock.Close();
            }
            catch (Exception DFGFD)
            {
            }
        }

我以奇怪的格式将我的用户名和密码放入文本文件中。  我无法找到我错过的地方从机器上获取数据。

0 个答案:

没有答案