1

ここで見つかった ICMP コードを機能させようとしています。ただし、この行では:

Socket = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork,
                                       System.Net.Sockets.SocketType.Raw,
                                       System.Net.Sockets.ProtocolType.Icmp);

SocketException が発生します:「アクセス許可によって禁止されている方法でソケットにアクセスしようとしました」(ネイティブ エラー コード: 10013)

管理者モードで実行することは (悪い) 解決策の 1 つですが、自分のプログラムをユーザー レベルで動作させたいので、何を提案しますか? 他の ICMP アプローチも歓迎します。

「ClickOnce」セキュリティ設定を試してみましたが、役に立ちませんでした。

4

1 に答える 1

2

Windows 2000 以降、ICMP と raw ソケットは管理者ユーザーに制限されています。何をしようとしているのかは述べていませんが、目標を達成するために NetworkInformation 名前空間を試すことができます: NetworkInformation

ICMP エコー要求を送信するためのPingクラスが含まれています。

于 2009-04-13T22:31:43.103 に答える