使用PYTHON获取所有windows注册表值及其路径
id所做的是……。此代码在键和子键之间循环,并检查键是否有任何值(如果有)。对于这段代码,指针或任何从HKEY_CURRENT_CONFIG移动到System和CurrentControlSet以及CurrentControlSet的东西都有一个值(我手动创建了它),但错误如下 回溯(最后一次调用):系统文件“C:/Users/siva kumar/PycharmProjects/delete this/3.py”,第34行,在System\CurrentControlSet traverse\u registry\u tree(winreg.HKEY\u CURRENT\u CONFIG,keypath)r“System\CurrentControlSet”文件“C:/Users/siva kumar/PycharmProjects/delete this/3.py”,第21行,在traverse\u registry\u tree x=winreg.OpenKey中(winreg.HKEY_CURRENT_CONFIG,y,0,winreg.KEY_READ | winreg.KEY_WOW64_32KEY)#%('r',subkeypath)FileNotFoundError:[WinError 2]系统找不到指定的文件使用PYTHON获取所有windows注册表值及其路径,python,windows,registry,winreg,Python,Windows,Registry,Winreg,id所做的是……。此代码在键和子键之间循环,并检查键是否有任何值(如果有)。对于这段代码,指针或任何从HKEY_CURRENT_CONFIG移动到System和CurrentControlSet以及CurrentControlSet的东西都有一个值(我手动创建了它),但错误如下 回溯(最后一次调用):系统文件“C:/Users/siva kumar/PycharmProjects/delete this/3.py”,第34行,在System\CurrentControlSet traverse\
import winreg
def subkeys(key):
i = 0
while True:
try:
subkey = winreg.EnumKey(key, i)
yield subkey
i+=1
except WindowsError as e:
break
def traverse_registry_tree(hkey, keypath, tabs=1):
key = winreg.OpenKey(hkey, keypath, 0, winreg.KEY_READ)
for subkeyname in subkeys(key):
subkeypath = "%s\\%s" % (keypath, subkeyname)
print(subkeypath)
y='%s''"%s"' %('r',subkeypath)
print(y)
x = winreg.OpenKey(winreg.HKEY_CURRENT_CONFIG, y, 0, winreg.KEY_READ)
z=winreg.QueryInfoKey(x)[1]
print(z)
if z!=0:
for i in range(0, z):
print(winreg.EnumValue(key, i))
traverse_registry_tree(hkey, subkeypath, tabs+1)
keypath = r"System"
print("System")
traverse_registry_tree(winreg.HKEY_CURRENT_CONFIG, keypath)
您是否查看了这些相关问题?并选择一个配置单元,枚举键值并递归枚举子键。对于起始配置单元,有一个用于
HKEY_LOCAL_机器
配置单元的伪句柄,以及一个用于将加载的用户配置单元作为子键的HKEY_用户
密钥的伪句柄s以用户SID命名。用户的“类”子键实际上是一个单独的配置单元,链接到用户主配置单元的“软件”键。跳过符号链接。若要对此进行测试,请使用关键字参数reserved=winreg.REG\u OPTION\u open\u LINK
打开一个键,然后查询值“symbolicinkValue”
。如果成功,您知道应该跳过该链接。