none
שינוי IP בפניה באמצעות Socket RRS feed

  • שאלה

  • שלום

    למחשב שלי ישנם כמה IP ואני קובעת את הIP ע"י bind 

    אני פונה באמצעות socket לשרת כלשהו עם בקשה ומקבלת תשובה תקינה.

    לאחר הפעם הראשונה אני מקבלת שגיאה  Only one usage of each socket address (protocol/network address/port) is normally permitted

    האם לא סגרתי את הsocket כמו שצריך? איך אפשר לפתור את הבעיה?

    יש לציין שבלי השורה של הBind זה רץ תקין.

    מצורף הקוד בו אני משתמשת:

                Socket Rx = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                
                Rx.Bind(new IPEndPoint(IPAddress.Parse("95.175.35.73"), 9000));
                Rx.Connect(hostName, portNumber);
                             
                //data
                byte[] data = new byte[1024];

                int IntNS=0;

                NetworkStream ns = new NetworkStream(Rx);

                byte[] payload = Encoding.UTF8.GetBytes(domain);
                Rx.Send(payload);

                IntNS = ns.Read(data, 0, data.Length);
                //start recieve message
                while (IntNS!=-1 && IntNS > 0)
                {

                    IntNS = ns.Read(data, 0, data.Length);

                    IncomingData = IncomingData+Encoding.ASCII.GetString(data);

                    // Set the object (this) text property

                }

                ns.Close();

                Rx.Disconnect(true);

      
    יום חמישי 19 יוני 2014 11:49

תשובות

כל התגובות