最近看到几个C++版的动态改IP的例子想改成C#的,主要是用了DhcpNotifyConfigChange 这个未公开的函数 这是c#版的调用
[DllImport("dhcpcsvc.dll")]   
  public   static   extern   bool   DhcpNotifyConfigChange(   
  string   lpwszServerName,   //   本地机器为NULL   
  string   lpwszAdapterName,   //   适配器名称   
  bool   bNewIpAddress,   //   TRUE表示更改IP   
  long   dwIpIndex,   //   指明第几个IP地址,如果只有该接口只有一个IP地址则为0   
  long   dwIpAddress,   //   IP地址   
  long   dwSubNetMask,   //   子网掩码   
  long   nDhcpAction   );   //   对DHCP的操作   0:不修改,   1:启用   DHCP,2:禁用   DHCP
ip和网关要转化成long类型我找了个转化的函数,可是好像不行,请大家帮忙指导一下,谢谢了private long IpToLLong(string ip)
        {
            char[] dot = new char[] { '.' };
            string[] ipArr = ip.Split(dot);
            if (ipArr.Length == 3)
                ip = ip + ".0";
            ipArr = ip.Split(dot);            long ip_Int = 0;
            long p1 = long.Parse(ipArr[0]) * 256 * 256 * 256;
            long p2 = long.Parse(ipArr[1]) * 256 * 256;
            long p3 = long.Parse(ipArr[2]) * 256;
            long p4 = long.Parse(ipArr[3]);
            ip_Int = p1 + p2 + p3 + p4;
            return ip_Int;
        }