首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#WMI获取系统信息

2012-11-26 
C#,WMI获取系统信息加入命名空间:using System.Management/// summary/// //获取CPU序列号代码/// /su

C#,WMI获取系统信息

加入命名空间:

using System.Management; 

 

 /// <summary>
        /// //获取CPU序列号代码
        /// </summary>
        /// <returns></returns>
        string GetCpuID()
        {
            try
            {
                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 "cpu序列号:" + cpuInfo;
            }
            catch { return "unknow"; }
            finally { }
        }

        /// <summary>
        /// 获取网卡硬件地址
        /// </summary>
        /// <returns></returns>
        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地址:" + mac;
            }
            catch { return "unknow"; }
            finally { }
        }

        /// <summary>
        /// 获取IP地址
        /// </summary>
        /// <returns></returns>
        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 "IP地址:" + st;
            }
            catch { return "unknow"; }
            finally { }
        }

        /// <summary>
        /// 获取硬盘ID 
        /// </summary>
        /// <returns></returns>
        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>         
        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>
        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>
        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>
        string GetComputerName()
        {
            try
            {
                return "计算机名:" + System.Environment.GetEnvironmentVariable("ComputerName");
            }
            catch { return "unknow"; }
            finally { }
        }

 

 

 

热点排行