我想知道为什么 python 模块 winreg 不返回 Win7 主机中的所有子键和值。
如果我使用本机 reg cmdline 命令查询注册表,我会得到以下信息:
>reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI
ShowTabletKeyboard REG_DWORD 0x0
LastLoggedOnProvider REG_SZ {2A1ABE6F-476D-4E5B-FB68-21EF45555CC37}
LastLoggedOnSAMUser REG_SZ DOMAIN\USERNAME
LastLoggedOnUser REG_SZ DOMAIN\USERNAME
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\BootAnimation
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\LogonSoundPlayed
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\SessionData
如果我使用 python 脚本查询相同的位置,我只会得到以下值和子键:
regread.py 值:SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI {'ShowTabletKeyboard': 0}
Subkeys:
SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI
['Background', 'BootAnimation']
如您所见,缺少一些项目。regread.py 在拉取其他注册表位置时似乎工作正常,并且基于 Tim Golden 在此处发布的代码:http: //bytes.com/topic/python/answers/802172-scanning-through-windows-registry
有谁知道为什么 winreg 不会从 Windows 7 主机上的 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI 返回所有值和子项。我是本地管理员,即使是域管理员,它仍然无法正常工作。我正在使用 python 3.3(32 位)和 pywin32-218。