Python - Как получить значения подразделов в реестре - PullRequest
1 голос
/ 07 октября 2019

У меня небольшая проблема с получением значений подразделов в реестре Windows. Предположим, у меня есть этот ключ: {49B2791A-B1AE-4C90-9B8E-E860BA07F889}, и я хочу получить значения его подразделов. В настоящее время после выполнения кода мне удалось получить только первое значение подраздела, но я хочу получить всеценности всех детей. Я думаю, что у меня есть проблемы с индексами.

import winreg 

def reg_read(key):
    try:
        # storing key object
        hKey = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, key)
        counter = 0
        while counter < 4 :
            # Getting child keys from parent key as str type.
            sub_key = winreg.EnumKey(hKey,counter)
            # Constructing a new key full path. 
            sub_key_full_name = key + sub_key
            # Storing child key object.   
            hSubkey = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, sub_key_full_name) 
            # getting child values.
            key_name, key_value, key_type = winreg.EnumValue(hSubkey,counter)
            print("Value is:" + key_value)
            counter += 1                        


    except WindowsError as err:
        print(err)  
        pass                

# Parent key 
key = 'CLSID\{49B2791A-B1AE-4C90-9B8E-E860BA07F889}\\'
reg_read(key)

Если кто-то может указать мне на мои ошибки здесь или придумать другой подход к этому, я буду благодарен. Я новичок в программировании, а также в Python. Это мой первый вопрос здесь в stackoverflow, так что спасибо и привет!

...