C# c ping类在monodevelop中引发异常

C# c ping类在monodevelop中引发异常,c#,ubuntu,monodevelop,ping,C#,Ubuntu,Monodevelop,Ping,我的程序中有以下简单的ping方法 internal static bool Pinger(string host_to_ping = null) { bool network_available = NetworkInterface.GetIsNetworkAvailable(); int timeout_per_host_millis = 1000; if (network_available) {

我的程序中有以下简单的ping方法

    internal static bool Pinger(string host_to_ping = null)
    {
        bool network_available = NetworkInterface.GetIsNetworkAvailable();

        int timeout_per_host_millis = 1000;

        if (network_available)
        {
            Ping p = new Ping();

            try
            {
                PingReply r = p.Send(host_to_ping, timeout_per_host_millis);

                if (r.Status == IPStatus.Success)
                    return true;
            }
            catch { }
        }
        return false;
    }
但当Ping p=新Ping时;实例化它抛出

的类型初始值设定项引发了异常 System.Net.NetworkInformation.Ping

Monodevelop 4.2.2
Ubuntu 14.04 x64

几天前我遇到了同样的问题,最简单的修复/解决方法是以root用户身份运行monodevelop

例如,打开终端并键入:

sudo monodevelop
随着monodevelop现在作为根打开。打开您的项目并按正常方式编译,您应该会看到它正确执行


希望这有帮助

几天前我遇到了同样的问题,最简单的修复/解决方法是以root身份运行monodevelop

例如,打开终端并键入:

sudo monodevelop
随着monodevelop现在作为根打开。打开您的项目并按正常方式编译,您应该会看到它正确执行


希望这有帮助

有关详细信息,请参阅InnerException。InnerException{System.NullReferenceException:对象引用未设置为System.Net.NetworkInformation.Ping.CheckLinuxCapabilities[0x00000]中的对象实例,位于System.Net.NetworkInformation.Ping..0}System.NullReferenceExceptionOnas@Jonathan说,ping需要根权限,您只能从控制台运行ping,因为它是suid@Karataping确实设置了SUID,但是在尝试调用新ping时,即使以root身份运行monodevelop,我也会遇到同样的错误。@Karata,在Ubuntu16.04上是否有MonoDevelop的解决方案,以便我们可以在以sudo或root运行MonoDevelop时调用新的Ping?谢谢。有关详细信息,请参阅InnerException。InnerException{System.NullReferenceException:Object reference未设置为System.Net.NetworkInformation.Ping.CheckLinuxCapabilities[0x00000]中的对象实例,位于System.Net.NetworkInformation.Ping..cctor[0x00000]in:0}System.NullReferenceException@Jonathan说,ping需要根权限,您只能从控制台运行ping,因为它是suid@Karataping确实设置了SUID,但是在尝试调用新ping时,即使以root身份运行monodevelop,我也会遇到同样的错误。@Karata,在Ubuntu16.04上是否有MonoDevelop的解决方案,以便我们可以在以sudo或root运行MonoDevelop时调用新的Ping?谢谢。不幸的是,这没用,还有其他选择吗?@jambel我也有同样的问题;你能解决这个问题吗?@jambel,Ubuntu 16.04上的MonoDevelop有没有解决办法,这样我们就可以在以sudo或root运行MonoDevelop时调用新的Ping了?谢谢。不幸的是,这没用,还有其他选择吗?@jambel我也有同样的问题;你能解决这个问题吗?@jambel,Ubuntu 16.04上的MonoDevelop有没有解决办法,这样我们就可以在以sudo或root运行MonoDevelop时调用新的Ping了?非常感谢。