private void Form1_Load(object sender, EventArgs e)
        {
            
            IPAddress ServerIp = IPAddress.Parse("10.10.133.160");
            this.servername.Text = "10.10.133.160";
        }
        /// <summary>
        /// 得到本机的IP 
        /// </summary>
        /// <returns></returns>
        private static IPAddress GetServerIp()
        {
            IPHostEntry IpList = Dns.GetHostByName(Dns.GetHostName());
            return IpList.AddressList[0];
        }怎么使得动态获取? 本人菜鸟一个 以后会问很多问题多谢大家

解决方案 »

  1.   

    用System.Net.NetworkInformation命名空间下的类,下面是从MSDN里摘出来的例子。
    public static void DisplayDnsAddresses()
    {
        NetworkInterface[] adapters  = NetworkInterface.GetAllNetworkInterfaces();
        foreach (NetworkInterface adapter in adapters)
        {        IPInterfaceProperties adapterProperties = adapter.GetIPProperties();
            IPAddressCollection dnsServers = adapterProperties.DnsAddresses;
            if (dnsServers.Count > 0)
            {
                Console.WriteLine(adapter.Description);
                foreach (IPAddress dns in dnsServers)
                {
                    Console.WriteLine("  DNS Servers ............................. : {0}", 
                        dns.ToString());
                }
                Console.WriteLine();
            }
        }
    }
      

  2.   

    Dns.GetHostName();
                IPAddress[] IP = Dns.GetHostAddresses(Dns.GetHostName());
                IP.ToString();
      

  3.   

    // 获取用户登录IP
            private string GetIp()
            {
                //可以透过代理服务器
                string userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
                if (userIP == null || userIP == "")
                {
                    //没有代理服务器,如果有代理服务器获取的是代理服务器的IP
                    userIP = Request.ServerVariables["REMOTE_ADDR"];
                }
                return userIP;
            }
      

  4.   

    http://topic.csdn.net/u/20110216/15/5c390ccf-e108-4dc4-ba8a-da80909fc606.html
      

  5.   

    获得计算机名,使用DNS类的GetHostName方法:
    GetHostName:获取本地计算机的主机名获得本地IP地址,使用DNS类的GetHostAddress方法
    GetHostAddress方法:返回指定主机的InterNet协议地址:
    写了个小程序,附源码供参考程序运行截图:
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Net;   //需要引用.Net命名空间namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //获得主机名
                string HostName = Dns.GetHostName();
                Console.WriteLine("主机名是:"+HostName);            //遍历地址列表,如果电脑有多网卡只能这样遍历显示
                IPAddress[] iplist=Dns.GetHostAddresses(HostName);
                for (int i = 0; i < iplist.Length; i++)
                {
                    Console.WriteLine("IP地址:"+iplist[i]);
                }
                Console.ReadLine();
            }
        }