请教怎样用代码实现这样的多IP设定:10.0.70.34,10.0.70.81,10.0.70.82
ManagementClass wmi = new ManagementClass("Win32_NetworkAdapterConfiguration");
使用这样之类的好像只能设定一个IP
谢谢

解决方案 »

  1.   

    ManagementObjectCollection nics = my.GetInstances();
    foreach(ManagementObject nics in nics)
    {
        //
    }
    可以找到所有IP,要过滤就要判断网卡类型
      

  2.   

    我现在是可以找到,但是需要随时增加删除IP和子网掩码ManagementClass wmi = new ManagementClass("Win32_NetworkAdapterConfiguration");
    ManagementObjectCollection moc = wmi.GetInstances();
    ManagementBaseObject inPar = null;
    ManagementBaseObject outPar = null;
    string[] ip = new string[] { "10.0.70.34","10.0.70.81","10.0.70.82"};
    string[] subnet = new string[] { "255.255.255,0","10.0.70.81","10.0.70.82"};
    foreach (ManagementObject mo in moc)
    {
        if (!(bool) mo["IPEnabled"])
        continue;      inPar = mo.GetMethodParameters("EnableStatic");
        inPar["IPAddress"] = ip ;
        inPar["SubnetMask"] = subnet;
        outPar = mo.InvokeMethod("EnableStatic", inPar, null);
    }但是这样不行,只能设定10.0.70.34一个IP,无法将"10.0.70.81","10.0.70.82"都设定
    需要同时设定128个IP,也可删除.求助
      

  3.   

    subnet写错string[] subnet = new string[] { "255.255.255,0","255.255.255,0","255.255.255,0"};
      

  4.   

    我已经用上面图示里的方式添加了多个IP了,对于局域网来说,这些IP都是正确的,其他PC都可以ping通
    做个tcp的小程式发包这3个IP,使用wireshark也能看到有这些IP