python不显示Windows安装date

在Windows 7和Python 3.2.2上运行,下面的脚本不能给我Windows安装date。

import winreg as reg from datetime import datetime key = reg.OpenKey(reg.HKEY_LOCAL_MACHINE, r'SOFTWARE\Microsoft\Windows NT\CurrentVersion') secs = reg.QueryValueEx(key, 'InstallDate')[0] print(secs) date = datetime.fromtimestamp(secs) print(date) 

输出总是:

 0 1970-01-01 01:00:00 

但是当我用regedit手动search密钥时,它包含hex值0x517c09e0(十进制的1367083488)

由32位python进程进行的注册表访问将被重定向到64位Windows上的其他注册表配置单元。

即使您的代码指定访问Software\Microsoft\Windows NT\CurrentVersion ,它实际上被重定向到Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion

您可能希望指定_winreg.KEY_WOW64_64KEY_winreg.KEY_WOW64_32KEY作为reg.OpenKey函数的sam参数。

更多细节在这里和这里 。