문제

나는 그것을 얻으려고 노력하고있다 ICMP 코드는 여기에 있습니다 일하다. 그러나이 라인에서 :

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

나는 socketexception을 얻는다 : "액세스 권한에 의해 금지 된 방식으로 소켓에 액세스하려는 시도"(기본 오류 코드 : 10013)

관리자 모드에서 실행하는 것은 하나의 (나쁜) 솔루션이지만, 내 프로그램이 사용자 수준에서 작동하기를 원하기 때문에 무엇을 Sugesst 하시겠습니까? 다른 ICMP 접근 방식도 환영합니다.

나는 "ClickOnce"보안 설정을 가지고 놀았습니다.

도움이 되었습니까?

해결책

ICMP 및 원시 소켓은 Windows 2000 이후 관리자 사용자에게 제한됩니다. 당신은 당신이하려는 일을 언급하지 않았지만, 당신은 당신의 목표를 달성하기 위해 NetworkInformation 네임 스페이스를 시도 할 수 있습니다. NetworkInformation

여기에는 포함됩니다 ICMP 에코 요청을 보내는 클래스.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top