c# 获取电脑硬件信息通用查询类[测试通过]
C#获取电脑硬件信息通用类[Computer]代码展示和分析,简介如下:
1.项目中添加System.Management引用。
2.添加类Computer,把下面代码全选,复制,粘贴。
3.使用方法new Computer().GetComputerName()。
代码
using
System;
using
System.Management;
//
添加System.Management引用
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;
}
///
<summary>
///
构造函数
///
</summary>
public
Computer()
{
CpuID
=
GetCpuID();
MacAddress
=
GetMacAddress();
DiskID
=
GetDiskID();
IpAddress
=
GetIPAddress();
LoginUserName
=
GetUserName();
SystemType
=
GetSystemType();
TotalPhysicalMemory
=
GetTotalPhysicalMemory();
ComputerName
=
GetComputerName();
}
///
<summary>
///
获取cpu序列号
///
</summary>
///
<returns></returns>
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
"
;
}
}
///
<summary>
///
获取网卡硬件地址
///
</summary>
///
<returns></returns>
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
"
;
}
}
///
<summary>
///
获取IP地址
///
</summary>
///
<returns></returns>
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
"
;
}
}
///
<summary>
///
获取硬盘ID
///
</summary>
///
<returns></returns>
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
"
;
}
}
///
<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
"
;
}
}
///
<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
"
;
}
}
///
<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
"
;
}
}
///
<summary>
///
电脑名称
///
</summary>
///
<returns></returns>
public
string
GetComputerName()
{
try
{
return
System.Environment.GetEnvironmentVariable(
"
ComputerName
"
);
}
catch
{
return
"
unknow
"
;
}
}
}
还没有评论,来说两句吧...