import winreg #打印子键 def getSubKeys(k): i=0 while True: try: h=winreg.EnumKey(k,i) except: break finally: print(h) i=i+1 def goBranch(s): a=s.split("//") handles=[] if a[0]=="HKEY_CURRENT_USER": h=winreg.HKEY_CURRENT_USER if a[0]=="HKEY_CLASSES_ROOT": h=winreg.HKEY_CLASSES_ROOT for i in a[1:]: h=winreg.OpenKey(h,i) handles.append(h) t=winreg.QueryInfoKey(h)[1] for im in range(0,t): v=winreg.EnumValue(h,im) print(v) for h in handles: winreg.CloseKey(h) s="HKEY_CURRENT_USER//Software//Microsoft//Windows//CurrentVersion//Run" goBranch(s)