注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

幽狼De博客

记录成长中的点点滴滴

 
 
 

日志

 
 

[转].net读取硬件信息的参考代码   

2010-03-01 13:49:25|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

[转].net读取硬件信息的参考代码

using System;
using System.Management;

namespace HTSoft.Common.Register
{
    
/**//**//**//// <summary> 
    
/// 计算机信息类
    
/// </summary> 

    internal 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;

        
internal static Computer Instance()
        
{
            
if (_instance == null)
                _instance 
= new Computer();
            
return _instance;
        }


        
internal Computer()
        
{
            CpuID 
= GetCpuID();
            MacAddress 
= GetMacAddress();
            DiskID 
= GetDiskID();
            IpAddress 
= GetIPAddress();
            LoginUserName 
= GetUserName();
            SystemType 
= GetSystemType();
            TotalPhysicalMemory 
= GetTotalPhysicalMemory();
            ComputerName 
= GetComputerName();
        }

        
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
            
{
            }


        }

        
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
            
{
            }


        }

        
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
            
{
            }


        }


        
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
            
{
            }

        }

    }

}


CPU温度

Public Function GetCPUTemp() As Double
          Dim i     As Integer
          Dim mCPU     As Variant
          Dim u     As Variant
          Dim s     As String
            
          Set mCPU 
= GetObject("WINMGMTS:{impersonationLevel=impersonate}!rootwmi").ExecQuery("Select   CurrentTemperature   From   MSAcpi_ThermalZoneTemperature")
          For Each u In mCPU
                  s 
= s & u.CurrentTemperature
          Next
            
          Set mCPU 
= Nothing
            
          GetCPUTemp 
= (s - 2732/ 10
            DoEvents
  End Function


Source:http://blog.csdn.net/xykwgjyygy/archive/2008/02/22/2112697.aspx
  评论这张
 
阅读(578)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017