アクセス権限によって禁止されている方法でソケットにアクセスしようとしました。なぜですか? [重複] 質問する

アクセス権限によって禁止されている方法でソケットにアクセスしようとしました。なぜですか? [重複] 質問する
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);
    }
}

プログラムを起動しようとするとエラーが発生します:

アクセス権限によって禁止されている方法でソケットにアクセスしようとしました。

なぜかわかりません...以前は正常に動作していたのに、今は動作しません。

私は VLC でストリーミングしており、パケットを受信し、いくつかのレポートを作成してから、ローカルのプレーヤーに再ストリーミングしたいと考えています。

ベストアンサー1

Windows でホスト ネットワーク サービスを再起動すると、問題は解決しました。

次のコマンドを実行すると、管理者の Powershell/コマンド プロンプト セッションでこれを実行できます。

net stop hns
net start hns

または、Windows サービス マネージャーを使用してこれを行うこともできます。

services.msc ウィンドウ ペインで、「ホスト ネットワーク サービス」とそれに関連する「再起動」ボタンが強調表示されています。

おすすめ記事