C# 分配了,但总是一样的。这需要一点工作,但基本上是我要找的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?如果是这样,请分享。@Knickerless Noggins:正如这里所指出的,实际上似乎有了新的API。看起来好多了。不

C# 分配了,但总是一样的。这需要一点工作,但基本上是我要找的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?如果是这样,请分享。@Knickerless Noggins:正如这里所指出的,实际上似乎有了新的API。看起来好多了。不,c#,.net,C#,.net,分配了,但总是一样的。这需要一点工作,但基本上是我要找的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?如果是这样,请分享。@Knickerless Noggins:正如这里所指出的,实际上似乎有了新的API。看起来好多了。不幸的是,“被接受”的答案并不反映时间的流逝。Stackoverflow有点怪。当你评估一个解决方案时,一定要看其他答案的投票结果。这需要一些工作,但基本上就是我想要的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?


分配了,但总是一样的。这需要一点工作,但基本上是我要找的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?如果是这样,请分享。@Knickerless Noggins:正如这里所指出的,实际上似乎有了新的API。看起来好多了。不幸的是,“被接受”的答案并不反映时间的流逝。Stackoverflow有点怪。当你评估一个解决方案时,一定要看其他答案的投票结果。这需要一些工作,但基本上就是我想要的。谢谢@你说机器人需要一点功夫。这是否意味着生成的代码与上面的代码有很大不同?如果是这样,请分享。@Knickerless Noggins:正如这里所指出的,实际上似乎有了新的API。看起来好多了。不幸的是,“被接受”的答案并不反映时间的流逝。Stackoverflow有点怪。在评估解决方案时,请确保查看其他答案的投票结果。
ManagementObjectSearcher searcherNetwork =
new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_NetworkAdapterConfiguration");

foreach (ManagementObject queryObj in searcherNetwork.Get())
{
     foreach (var prop in queryObj.Properties)
     {
         Console.WriteLine(string.Format("Name: {0} Value: {1}", prop.Name, prop.Value));
     }
}
    using System.Net.NetworkInformation;

    NetworkInterface[] niAdpaters = NetworkInterface.GetAllNetworkInterfaces();

    private Boolean GetDhcp(Int32 iSelectedAdpater)
    {
        if (niAdpaters[iSelectedAdpater].GetIPProperties().GetIPv4Properties() != null)
        {
            return niAdpaters[iSelectedAdpater].GetIPProperties().GetIPv4Properties().IsDhcpEnabled;
        }
        else
        {
            return false;
        }
    }
public static string GetLocalIPAddress()
{
    var host = Dns.GetHostEntry(Dns.GetHostName());

    foreach (var ip in host.AddressList)
    {
        if (ip.AddressFamily == AddressFamily.InterNetwork)
        {
            return ip.ToString();

        }

    }

    return "unknown";
}

public static string GetLocalIpAllocationMode()
{
    string MethodResult = "";
    try
    {
        ManagementObjectSearcher searcherNetwork = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_NetworkAdapterConfiguration");

        Dictionary<string, string> Properties = new Dictionary<string, string>();

        foreach (ManagementObject queryObj in searcherNetwork.Get())
        {
            foreach (var prop in queryObj.Properties)
            {
                if (prop.Name != null && prop.Value != null && !Properties.ContainsKey(prop.Name))
                {
                    Properties.Add(prop.Name, prop.Value.ToString());

                }

            }

        }

        MethodResult = Properties["DHCPEnabled"].ToLower() == "true" ? "DHCP" : "Static";

    }
    catch (Exception ex)
    {
        ex.HandleException();

    }

    return MethodResult;

}