none
怎么得到 IP地址? RRS feed

答案

  • C#中怎么可以查到本机的 Ip地址和计算机的信息?

    怎么跟别的计算机通信?

    1)获取本机IP地址:

     foreach (var item in Dns.GetHostAddresses(Dns.GetHostName()))
                {
                    Console.WriteLine(item);
                }

    2)获取计算机信息:

    建议使用Computer类(注意:该类并非C#,而是VB的;因此你必须先引入Visual Basic类,然后直接使用Computer c = new Computer()),使用其中的方法或者属性获取你要的信息。

    3)计算机通信,使用System.Net中的Socket或者TCP/IP通讯,具体可以参考:

    http://blog.csdn.net/liuliqin132/article/details/2219338


       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    • 已建议为答案 Jacky_shen 2012年2月15日 6:33
    • 已标记为答案 LiuBinqiang 2012年2月15日 8:40
    2012年2月15日 5:57
    版主
  • 取得local IPv4的IP

    //using System.Net;
    //using System.Management;
    //using System.Net.NetworkInformation;
    
    IPGlobalProperties compProperties = IPGlobalProperties.GetIPGlobalProperties();
    NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
    foreach (NetworkInterface adapter in nics)
    {
    	foreach (var x in adapter.GetIPProperties().UnicastAddresses)
    	{
    		if (x.Address.AddressFamily.ToString() == "InterNetwork")
    		{
    			listBox1.Items.Add(x.Address.ToString());
    		}
    	  }
    }


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/

    2012年2月15日 6:41
  • Hi LiuBinqiang,

      另外还有一种方法是获取远程主机的IP地址,就像下面这样写法:

       //获取远程主机IP
       public string[] getRemoteIP(string RemoteHostName)
       {
        IPHostEntry ipEntry = Dns.GetHostByName(RemoteHostName);
        IPAddress[] IpAddr = ipEntry.AddressList;
        string[] strAddr = new string[IpAddr.Length];
        for (int i=0;i<ipaddr.length;i++) <="" body="" return(strAddr);="" strAddr[i]="IpAddr[i].ToString();" {="" }=""></ipaddr.length;i++)>

      具体如何获得MAC地址,你还可以参考如下的文章:

    如何在C#中获得IP?

    http://hi.baidu.com/crp8/blog/item/7d61dcfcc9caa884b801a048.html

    Sincerely,

    Jason Wang


    orichisonic http://blog.csdn.net/orichisonic If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".


    2012年2月15日 8:36

全部回复

  • C#中怎么可以查到本机的 Ip地址和计算机的信息?

    怎么跟别的计算机通信?

    1)获取本机IP地址:

     foreach (var item in Dns.GetHostAddresses(Dns.GetHostName()))
                {
                    Console.WriteLine(item);
                }

    2)获取计算机信息:

    建议使用Computer类(注意:该类并非C#,而是VB的;因此你必须先引入Visual Basic类,然后直接使用Computer c = new Computer()),使用其中的方法或者属性获取你要的信息。

    3)计算机通信,使用System.Net中的Socket或者TCP/IP通讯,具体可以参考:

    http://blog.csdn.net/liuliqin132/article/details/2219338


       QQ我:讨论(Talk)
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    • 已建议为答案 Jacky_shen 2012年2月15日 6:33
    • 已标记为答案 LiuBinqiang 2012年2月15日 8:40
    2012年2月15日 5:57
    版主
  • 取得local IPv4的IP

    //using System.Net;
    //using System.Management;
    //using System.Net.NetworkInformation;
    
    IPGlobalProperties compProperties = IPGlobalProperties.GetIPGlobalProperties();
    NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
    foreach (NetworkInterface adapter in nics)
    {
    	foreach (var x in adapter.GetIPProperties().UnicastAddresses)
    	{
    		if (x.Address.AddressFamily.ToString() == "InterNetwork")
    		{
    			listBox1.Items.Add(x.Address.ToString());
    		}
    	  }
    }


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/

    2012年2月15日 6:41
  • Hi LiuBinqiang,

      另外还有一种方法是获取远程主机的IP地址,就像下面这样写法:

       //获取远程主机IP
       public string[] getRemoteIP(string RemoteHostName)
       {
        IPHostEntry ipEntry = Dns.GetHostByName(RemoteHostName);
        IPAddress[] IpAddr = ipEntry.AddressList;
        string[] strAddr = new string[IpAddr.Length];
        for (int i=0;i<ipaddr.length;i++) <="" body="" return(strAddr);="" strAddr[i]="IpAddr[i].ToString();" {="" }=""></ipaddr.length;i++)>

      具体如何获得MAC地址,你还可以参考如下的文章:

    如何在C#中获得IP?

    http://hi.baidu.com/crp8/blog/item/7d61dcfcc9caa884b801a048.html

    Sincerely,

    Jason Wang


    orichisonic http://blog.csdn.net/orichisonic If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".


    2012年2月15日 8:36