Hi,

I am a novice in Python, having attended a course few weeks ago and I'm working 
on my assignment now, and I encounter this issue when I was trying to print the 
entire Windows Registry (WR) sub-keys directories (trying that first with the 
below codes with adaptations from on-line research) and its value (later on).

Kindly advise if any, as it has been taking me few days. What I need is a 
display on the std screen the entire directory of sub-keys (inserted into a 
list) in a WR key say, HKEY_CURRENT_FIG, and then I will write the contents 
into a text or CSV file.
Thanks advance!

Here are my codes,

-----------------
import winreg

def traverse(root, key, list):
    hKey = winreg.OpenKey(root, key)
    try:
        i = 0
        while True:
            strFullSubKey = ""
            try:
                strSubKey = winreg.EnumKey(hKey, i)
                if (key != ""):
                    strFullSubKey = key + "\\" + strSubKey
                else:
                    strFullSubKey = strSubKey
            except WindowsError:
                hKey.Close()
                return
            traverse(root, strFullSubKey, list)
            list.append(strFullSubKey)
            i += 1

    except  WindowsError:
        hKey.Close()

global list
list = list()
traverse (winreg.HKEY_CURRENT_CONFIG,"",list)
print (list)

-----------------

results on screen, which is not very correct, seeing that the 2nd item 
("Software") on the list should not be printed/inside in the first place, as it 
is not as such in the actual directory structure of HKEY_CURRENT_CONFIG

['Software\\Fonts', 'Software', 
'System\\CurrentControlSet\\Control\\Print\\Printers\\HP Deskjet F300 Series', 
'System\\CurrentControlSet\\Control\\Print\\Printers', 
'System\\CurrentControlSet\\Control\\Print', 
'System\\CurrentControlSet\\Control\\VIDEO', 
'System\\CurrentControlSet\\Control', 
'System\\CurrentControlSet\\SERVICES\\TSDDD\\DEVICE0', 
'System\\CurrentControlSet\\SERVICES\\TSDDD', 
'System\\CurrentControlSet\\SERVICES\\VGASAVE\\DEVICE0', 
'System\\CurrentControlSet\\SERVICES\\VGASAVE', 
'System\\CurrentControlSet\\SERVICES', 'System\\CurrentControlSet', 'System']
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to