CPU序列号,硬盘ID,网卡硬件地址。 这三个数据是一直不变的

LANTE80 2007-09-02 09:17:42
疑问
...全文
1204 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
fs_zxyang 2007-09-24
  • 打赏
  • 举报
回复
using System;
using System.Runtime.InteropServices;
using System.Management;

namespace Hardware
{
public class HardwareInfo
{
/// <summary>
/// 得到硬盘序号
/// </summary>
public string GetHDId()
{
string strHardInfo = "";
ManagementClass cimObject = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection mocHard = cimObject.GetInstances();
foreach (ManagementObject moHard in mocHard)
{
strHardInfo += moHard["Model"].ToString() + "_";
}
return strHardInfo.Substring(0, strHardInfo.Length - 1);
}

/// <summary>
/// 得到CPU序号
/// </summary>
public string GetCPUId()
{
ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc.GetInstances();
string strCpuID = null;
foreach (ManagementObject mo in moc)
{
strCpuID = mo.Properties["ProcessorId"].Value.ToString();
break;
}
return strCpuID;
}
}
}


我正在研究PocketPC里获得硬件信息,现还未有结果。以上代码是在台式机下面可以实向的,你可试试!
于娜 2007-09-14
  • 打赏
  • 举报
回复
说的乱七八糟 也没个结果
LANTE80 2007-09-03
  • 打赏
  • 举报
回复
我找到原因了。

是硬盘ID的问题,当插入U盘并与机器连接时取的硬盘ID就有问题,

断开后就正常了。

谢谢大家帮助,散分!大家都有^_^
KKND2006 2007-09-03
  • 打赏
  • 举报
回复
关于CPU序列号,AMD的CPU取出来的都是一样的
KKND2006 2007-09-03
  • 打赏
  • 举报
回复
1.CPU序列号,AMD的CPU是没有的

现在INTEL的CPU,除非用户主动在BIOS里面打开查询CPU 序列号的功能,否则OS不能直接取到,除非用非法手段,用托管代码取不到

2.硬盘序列号,不是每家硬盘厂商都是有序列号的,有特定系列的硬盘,取出来的都是一样的,也有可能根本取不到,报错,无法访问逻辑驱动器,并且这个也和BIOS设置相关

3:网卡MAC号倒是可以,但是这个太好换了(硬件),软件方面,只需要修改注册表就能修改MAC号码,如果是主动修改,可以用生成器生成一个唯一的MAC号码,重复机率很小
  • 打赏
  • 举报
回复
网卡物理地址不能改,MAC地址可以改,默认情况下网卡物理地址就是MAC地址。
但如果改动了MAC地址,两个就不一样了
CSDNATM 2007-09-03
  • 打赏
  • 举报
回复
按理来说,如果要偷换,这些信息都是可以换的!
syeerzy 2007-09-02
  • 打赏
  • 举报
回复
这3个都可以刷出来的
LANTE80 2007-09-02
  • 打赏
  • 举报
回复
用户没有修改MAC地址,

我是用户登录后注册成功,退出再登录就看到注册没成功,

因为用CPU序列号,硬盘ID,网卡硬件地址加起来做的唯一标识又变了。

这问题在公司的机器上没发现过,但在客户那就出现几次了,

我们公司的机器都不能上INTERTEK,只能上公司的内部网
wxy0401 2007-09-02
  • 打赏
  • 举报
回复
建议不要用MAC地址。
chieftech 2007-09-02
  • 打赏
  • 举报
回复
我不太赞成“加起来形成唯一标示”的做法

如果万一用户通过工具修改了MAC地址,就会破坏验证机制
LANTE80 2007-09-02
  • 打赏
  • 举报
回复
是的,楼上的,用CPU序列号,硬盘ID,网卡硬件地址加起来做的唯一标识大多机器是不变的,

但也存在几台机器是会变的。可惜就是不能在那几台机器上调试。
chieftech 2007-09-02
  • 打赏
  • 举报
回复
网卡的MAC地址是可以用工具修改的

楼主想要一个唯一标示一台机器的字段吧
LANTE80 2007-09-02
  • 打赏
  • 举报
回复
我说的网卡硬件地址就是指MAC地址。

这个有时会变吗?
danjiewu 2007-09-02
  • 打赏
  • 举报
回复
网卡硬件地址是指MAC地址吧?这个貌似是可以改的。
CPU序列号,硬盘ID这2个应该是不能改,除了生产厂商。
yingfengbajian 2007-09-02
  • 打赏
  • 举报
回复
网卡的MAC地址一定是不可改变的,尽管可以恶意的修改但是结果却是另一台与之有相同MAC地址的机子上不了网,
macker0030 2007-09-02
  • 打赏
  • 举报
回复
如果会变,可能是这三个里面某一个读取失败了?

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧