Python 正在尝试通过_winreg获取MachineGuid,但无法工作
我可以在注册表编辑器中看到该值,路径为Python 正在尝试通过_winreg获取MachineGuid,但无法工作,python,windows,winreg,Python,Windows,Winreg,我可以在注册表编辑器中看到该值,路径为HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Cryptography,但无法使用以下代码获取该值: import _winreg key = _winreg.OpenKey( _winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Cryptography" ) result = _winreg.QueryValueEx(key, "Machine
HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Cryptography
,但无法使用以下代码获取该值:
import _winreg
key = _winreg.OpenKey(
_winreg.HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Cryptography"
)
result = _winreg.QueryValueEx(key, "MachineGuid")
print result
我得到了“系统找不到指定的文件”,这令人困惑,因为它就在那里
那么,用几乎完全相同的代码检索其他值是没有问题的:
key = _winreg.OpenKey(
_winreg.HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\COM3"
)
result = _winreg.QueryValueEx(key, "BuildType")
print result
输出为:(u'Free',1)
我做错了什么?我该怎么做才能得到这个
机器UID
?您的代码在32位Windows上运行良好,
如果希望它也在64位Windows上运行,请尝试以下操作:
key = _winreg.OpenKey(
_winreg.HKEY_LOCAL_MACHINE,
"SOFTWARE\\Microsoft\\Cryptography",
0,
_winreg.KEY_READ | _winreg.KEY_WOW64_64KEY
)
result = _winreg.QueryValueEx(key, "MachineGuid")
print result
参考: