private void StartReceivingData(string ipAddress, int iPort)     {         try         {             if (!_bContinueReciving)             {                 //initializeMainSocket(ipAddress, iPort);                 _mSocket = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);//<------HERE IS RAISED THE EXCEPTION                 _mSocket.Bind(new IPEndPoint(IPAddress.Parse(ipAddress), iPort));                 //  _mSocket.Bind(new IPEndPoint(IPAddress.Loopback, iPort));                 _mSocket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.HeaderIncluded, true);                 _mSocket.IOControl(IOControlCode.ReceiveAll, new byte[4] { 1, 0, 0, 0 }, new byte[4] { 0, 0, 0, 0 });                 //var 1                 _mSocket.BeginReceive(_buffReceivedData, 0, _buffReceivedData.Length, SocketFlags.None,                                      new AsyncCallback(OnReceive), null);                 initializeLocalSocket();             }             else             {                 _bContinueReciving = false;                 _mSocket.Close();             }         }         catch (Exception exception)         {             Debug.WriteLine(exception);         }     } I don't understand why...it worked and now it doesn't. could someone help me? i am streaming with vlc, and i wan't to receive the packets, do some reports, and then restream local to a player
I restarted this service : Host Network Service on windows Services program. And it worked.
You can run these commands in the windows terminal instead, as @admin mentioned in comment section:
net stop hns net start hns Most likely the socket is held by some process.  Use netstat -o to find which one.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With