计算机硬盘序列号有什么意义,硬盘序列号会/为什么会改变

我们的反盗版软件根据人们的硬盘序列号来识别他们。我相信这是一个不变的功能,不会改变,除非用户改变他们的主要物理驱动器-纠正我,如果我错了?我们使用WMIpython模块来获取用户硬盘驱动器序列号。

对于我们的两台测试计算机,硬盘驱动器序列号已更改。但我们根本没有更换他们的硬盘。

什么会导致这样的问题?我们识别序列号的代码是否不全面?我确实注意到post提到,如果标准用户进程检索序列号,您可能会得到错误的序列号。但在我们的例子中,该错误也发生在管理员用户身上。

一些重要信息:这两个测试节点都运行Windows 8 Professional

一台电脑是东芝笔记本电脑

另一台电脑是Acer Iconia平板电脑

平板电脑最近从Windows 8更新到windows8.1,我注意到更新后序列号发生了变化

笔记本电脑的管理员用户遇到了这个问题。平板电脑有一个标准用户体验过这个问题。

硬盘序列号是硬件设备的MAC地址还是其他什么?

获取硬盘序列号的代码:c = wmi.WMI()

for item in c.Win32_PhysicalMedia():

if "PHYSICALDRIVE" in str(item.Tag).upper():

serialNo = item.SerialNumber

break

编辑:将用户硬盘驱动器序列号作为普通进程和提升/管理进程检索的短脚本。

注意:对我来说,无论是作为用户还是作为管理员,它都会输出完全相同的序列号。这个剧本对你也一样吗?import os

import sys

import wmi

import win32com.shell.shell as shell

ASADMIN = 'asadmin'

def get_elevated_privleges():

if sys.argv[-1] != ASADMIN:

script = os.path.abspath(sys.argv[0])

params = ' '.join([script] + sys.argv[1:] + [ASADMIN])

shell.ShellExecuteEx(lpVerb='runas', lpFile=sys.executable, lpParameters=params)

def get_hard_drive_serial():

c = wmi.WMI()

for item in c.Win32_PhysicalMedia():

if "PHYSICALDRIVE" in str(item.Tag).upper():

return str(item.SerialNumber)

return None

print "HD Serial as Regular User: " + get_hard_drive_serial()

get_elevated_privleges()

print "HD Serial as Admin User: " + get_hard_drive_serial()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值