是否有用于解析Windows注册表文件(NTUSER.DAT)的纯Python(即完全跨平台)库?只读访问是可以接受的.
如果没有,那么存在哪些资源记录了Registry文件的反向工程结构?
谢谢!
更新 因为当问这个问题时似乎不存在纯Python解决方案,所以我继续写了一个.python-registry向Windows注册表文件公开了Pythonic,只读接口.
Boa*_*niv 12
winreg显然只是Windows,并不读取注册表配置单元文件(NTUSER.DAT等),而是直接访问注册表.
您正在寻找的是一个用于解析配置单元文件的库,看起来这个可能有用:
示例代码看起来很有希望:
# Use hivex to pull out a registry key.
h = hivex.Hivex ("/tmp/ntuser.dat")
key = h.root ()
key = h.node_get_child (key, "Software")
key = h.node_get_child (key, "Microsoft")
key = h.node_get_child (key, "Internet Explorer")
key = h.node_get_child (key, "Main")
val = h.node_get_value (key, "Start Page")
start_page = h.value_value (val)
#print start_page
# The registry key is encoded as UTF-16LE, so reencode it.
start_page = start_page[1].decode ('utf-16le').encode ('utf-8')
print "User %s's IE home page is %s" % (username, start_page)
Run Code Online (Sandbox Code Playgroud)
缺点是它仍然不是纯粹的python,而是另一个跨平台库的python包装器.
如果你必须有没有二进制依赖关系的纯python代码,你可以看看这个项目:http: //code.google.com/p/creddump/
它似乎是纯python,并且能够以跨平台的方式读取注册表配置单元,但是一个专用工具而不是库 - 那里的代码可能需要一些改编.
| 归档时间: |
|
| 查看次数: |
5213 次 |
| 最近记录: |