zoukankan      html  css  js  c++  java
  • 在Winform获取机器信息IP、MAC、机器名、CPU编号、主硬盘编号

    需引入命名空间:

    using System.Net;
    using System.Management;
      1 /// <summary>  
      2 /// 获取本地IP  
      3 /// </summary>  
      4 /// <returns></returns>  
      5 public static string Get_UserIP()  
      6 {  
      7     string ip = "";  
      8     string strHostName = Dns.GetHostName(); //得到本机的主机名  
      9     IPHostEntry ipEntry = Dns.GetHostByName(strHostName); //取得本机IP  
     10     if (ipEntry.AddressList.Length > 0)  
     11     {  
     12         ip = ipEntry.AddressList[0].ToString();  
     13     }  
     14     return ip;  
     15     //string userip = "";  
     16     //string name = Dns.GetHostName();  
     17     //IPAddress[] ips = Dns.GetHostAddresses(name);  
     18     //foreach (IPAddress ip in ips)  
     19     //    userip += ip.ToString() + "|";//所有IP  
     20     //return userip;  
     21 }  
     22 /// <summary>  
     23 /// 获取主机域名  
     24 /// </summary>  
     25 /// <returns></returns>  
     26 public static string Get_HostName()  
     27 {  
     28     return Dns.GetHostName();  
     29 }  
     30 /// <summary>  
     31 /// 获取CPU编号  
     32 /// </summary>  
     33 /// <returns>返回一个字符串类型</returns>  
     34 public static string Get_CPUID()  
     35 {  
     36     try  
     37     {  
     38         //需要在解决方案中引用System.Management.DLL文件  
     39         ManagementClass mc = new ManagementClass("Win32_Processor");  
     40         ManagementObjectCollection moc = mc.GetInstances();  
     41         string strCpuID = null;  
     42         foreach (ManagementObject mo in moc)  
     43         {  
     44             strCpuID = mo.Properties["ProcessorId"].Value.ToString();  
     45             break;  
     46         }  
     47         return strCpuID;  
     48     }  
     49     catch  
     50     {  
     51         return "";  
     52     }  
     53 }  
     54 /// <summary>  
     55 /// 获取第一分区硬盘编号  
     56 /// </summary>  
     57 /// <returns>返回一个字符串类型</returns>  
     58 public static string GetHardDiskID()  
     59 {  
     60     try  
     61     {  
     62         ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");  
     63         string strHardDiskID = null;  
     64         foreach (ManagementObject mo in searcher.Get())  
     65         {  
     66             strHardDiskID = mo["SerialNumber"].ToString().Trim();  
     67             break;  
     68         }  
     69         return strHardDiskID;  
     70     }  
     71     catch  
     72     {  
     73         return "";  
     74     }  
     75 }  
     76 /// <summary>  
     77 /// 获取网卡的MAC地址  
     78 /// </summary>  
     79 /// <returns>返回一个string</returns>  
     80 public static string GetNetCardMAC()  
     81 {  
     82     try  
     83     {  
     84         string stringMAC = "";  
     85         ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");  
     86         ManagementObjectCollection MOC = MC.GetInstances();  
     87         foreach (ManagementObject MO in MOC)  
     88         {  
     89             if ((bool)MO["IPEnabled"] == true)  
     90             {  
     91                 stringMAC += MO["MACAddress"].ToString();  
     92             }  
     93         }  
     94         return stringMAC;  
     95     }  
     96     catch  
     97     {  
     98         return "";  
     99     }  
    100 }  
    101 /// <summary>  
    102 /// 获取当前网卡IP地址  
    103 /// </summary>  
    104 /// <returns></returns>  
    105 public static string GetNetCardIP()  
    106 {  
    107     try  
    108     {  
    109         string stringIP = "";  
    110         ManagementClass MC = new ManagementClass("Win32_NetworkAdapterConfiguration");  
    111         ManagementObjectCollection MOC = MC.GetInstances();  
    112         foreach (ManagementObject MO in MOC)  
    113         {  
    114             if ((bool)MO["IPEnabled"] == true)  
    115             {  
    116                 string[] IPAddresses = (string[])MO["IPAddress"];  
    117                 if (IPAddresses.Length > 0)  
    118                 {  
    119                     stringIP = IPAddresses[0].ToString();  
    120                 }  
    121             }  
    122         }  
    123         return stringIP;  
    124     }  
    125     catch  
    126     {  
    127         return "";  
    128     }  
    129 }  
    130 public static string GetOutIP()  
    131 {  
    132     string strUrl = "http://www.ip138.com/ip2city.asp"; //获得IP的网址了   
    133     Uri uri = new Uri(strUrl);  
    134     System.Net.WebRequest wr = System.Net.WebRequest.Create(uri);  
    135     System.IO.Stream s = wr.GetResponse().GetResponseStream();  
    136     System.IO.StreamReader sr = new System.IO.StreamReader(s, Encoding.Default);  
    137     string all = sr.ReadToEnd(); //读取网站的数据             
    138     int i = all.IndexOf("[") + 1;  
    139     string tempip = all.Substring(i, 15);  
    140     string ip = tempip.Replace("]", "").Replace(" ", "");//找出i  
    141     //也可用  
    142     //new Regex(@"ClientIP: [([d.]+?)]").Match(new System.Net.WebClient().DownloadString("http://www.skyiv.com/info/")).Groups[1].Value;  
    143     return ip;  
    144 }  
  • 相关阅读:
    RHEL7使用ssm命令管理LVM
    LVM命令摘要
    Linux用户磁盘配额
    Linux磁盘分区实战案例
    通过yum升级CentOS/RHEL最小化安装
    RHEL7下PXE+FTP+Kickstart无人值守安装操作系统
    配置VSFTP服务器
    RHEL7下PXE+NFS+Kickstart无人值守安装操作系统
    RHEL7下PXE+Apache+Kickstart无人值守安装操作系统
    html5实现图片自适应手机屏幕页面的css
  • 原文地址:https://www.cnblogs.com/bo10296/p/4172265.html
Copyright © 2011-2022 走看看