zoukankan      html  css  js  c++  java
  • 获取本地计算机IP地址

    获取本地计算机IP地址有一种简便方法

    对于win8用户,右键点击左下角开始键,点击运行,得到对话框

    点击确定,然后出现程序框,

    输入ipconfig,点击回车

    得到IP地址

    现在发现一种用.NET写得新方法,全面获得本地计算机IP地址,MAC地址,硬盘ID

    using System;

    using System.Data;

    using System.Configuration;

    using System.Linq; using System.Web;

    using System.Web.Security;

    using System.Web.UI; using System.Web.UI.HtmlControls;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Xml.Linq; using System.Management;

    /// <summary>

    ///Computer 的摘要说明

    /// </summary>

    public class Computer

    {    

    public string CpuID;    

    public string MacAddress;    

    public string DiskID;    

    public string IpAddress;    

    public string LoginUserName;    

    public string ComputerName;  

    public string SystemType;    

    public string TotalPhysicalMemory; //单位:M    

    private static Computer _instance;    

    public static Computer Instance()    

    {        

    if (_instance == null)            

    _instance = new Computer();        

    return _instance;    

    }    

    public Computer()    

    {         CpuID = GetCpuID();        

    MacAddress = GetMacAddress();        

    DiskID = GetDiskID();        

    IpAddress = GetIPAddress();        

    LoginUserName = GetUserName();        

    SystemType = GetSystemType();        

    TotalPhysicalMemory = GetTotalPhysicalMemory();        

    ComputerName = GetComputerName();    

    }    

    public string GetCpuID()    

    {        

    try        

    {            

    //获取CPU序列号代码

    string cpuInfo = "";//cpu序列号

    ManagementClass mc = new ManagementClass("Win32_Processor");            

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)            

    {                

    cpuInfo = mo.Properties["ProcessorId"].Value.ToString();

    }            

    moc = null;            

    mc = null;            

    return cpuInfo;        

    }        

    catch        

    {            

    return "unknow";       

    }        

    finally        

    {         } 

    }    

    public string GetMacAddress()    

    {        

    try        

    {             //获取网卡硬件地址 string mac = "";          

    ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");            

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)            

    {                

    if ((bool)mo["IPEnabled"] == true)                

    {                    

    mac = mo["MacAddress"].ToString();                    

    break;                

    }            

    }            

    moc = null;            

    mc = null;            

    return mac;        

    }        

    catch        

    {            

    return "unknow";        

    }        

    finally        

    {         }

    }    

    public string GetIPAddress()    

    {        

    try        

    {             //获取IP地址

    string st = "";

    ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");           

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)            

    {                

    if ((bool)mo["IPEnabled"] == true)                

    {                     //

    st=mo["IpAddress"].ToString();

    System.Array ar;                    

    ar = (System.Array)(mo.Properties["IpAddress"].Value);                    

    st = ar.GetValue(0).ToString();                    

    break;                

    }            

    }            

    moc = null;            

    mc = null;            

    return st;        

    }        

    catch   

    {            

    return "unknow";        

    }       

    finally     

    {        

    }

    }

    public string GetDiskID()    

    {        

    try        

    {             //获取硬盘ID            

    String HDid = "";            

    ManagementClass mc = new ManagementClass("Win32_DiskDrive");            

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)            

    {                

    HDid = (string)mo.Properties["Model"].Value;            

    }            

    moc = null;            

    mc = null;           

    return HDid;        

    }       

    catch        

    {            

    return "unknow";        

    }        

    finally        

    {        

    }

    }

     /// <summary>   

    /// 操作系统的登录用户名

    /// </summary>   

    /// <returns></returns>    

    public string GetUserName()    

    {        

    try        

    {           

    string st = "";           

    ManagementClass mc = new ManagementClass("Win32_ComputerSystem");            

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)            

    {

    st = mo["UserName"].ToString();

    }            

    moc = null;            

    mc = null;            

    return st;        

    }        

    catch        

    {            

    return "unknow";        

    }        

    finally        

    {        

    }

    }

    /// <summary>    

    /// PC类型

    /// </summary>    

    /// <returns></returns>   

    public string GetSystemType()   

    {        

    try        

    {           

    string st = "";            

    ManagementClass mc = new ManagementClass("Win32_ComputerSystem");           

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)           

    {

     st = mo["SystemType"].ToString();

    }            

    moc = null;            

    mc = null;         

    return st;       

    }        

    catch        

    {            

    return "unknow";        

    }        

    finally        

    {        

    }

    }

    /// <summary>    

    /// 物理内存

    /// </summary>    

    /// <returns></returns>    

    public string GetTotalPhysicalMemory()    

    {        

    try        

    {

    string st = "";            

    ManagementClass mc = new ManagementClass("Win32_ComputerSystem");            

    ManagementObjectCollection moc = mc.GetInstances();            

    foreach (ManagementObject mo in moc)           

    {

    st = mo["TotalPhysicalMemory"].ToString();

    }            

    moc = null;           

    mc = null;           

    return st;        

    }        

    catch        

    {            

    return "unknow";        

    }       

    finally        

    {        

    }    

    }    

    /// <summary>    

    ///     

    /// </summary>   

    /// <returns></returns>    

    public string GetComputerName()    

    {        

    try       

    {            

    return System.Environment.GetEnvironmentVariable("ComputerName");        

    }        

    catch        

    {            

    return "unknow";        

    }        

    finally        

    {        

    }    

    }

  • 相关阅读:
    【摘录】面试官也许会这样问你....
    asp.net 面试题 【摘要】
    sql子查询
    c# 设计模式 之:简单工厂、工厂方法、抽象工厂之小结、区别
    C#编程:AOP编程思想
    EF Core 保存数据
    详解C#中的反射
    .Net Core RSA加解密,签名
    Sql Server帮助类
    c# DbfHelper 帮助类
  • 原文地址:https://www.cnblogs.com/Aqing816/p/4892432.html
Copyright © 2011-2022 走看看