Python-Skript zum Lesen und Schreiben eines Pfads zur Registrierung

Ich habe ein Python-Skript entwickelt, in dem ich ein Einstellungsfenster habe, in dem die Pfade für die Installation der Software ausgewählt werden können. Wenn ich im Einstellungsfenster auf die Schaltfläche OK geklickt habe, möchte ich alle ausgewählten Pfade in die Registrierung schreiben und die Datei lesen Gleiches gilt, wenn das Einstellungsfenster wieder geöffnet wird. Mein Code sieht wie folgt aus.

def OnOk(self, event):
    data1=self.field1.GetValue() #path selected in setting window
    aReg = ConnectRegistry(None,HKEY_LOCAL_MACHINE)
    keyVal=OpenKey(aReg,r"SOFTWARE\my path to\Registry", 0,KEY_WRITE)
    try:
       SetValueEx(keyVal,"Log file",0,REG_SZ,data1)
    except EnvironmentError:
       pass
    CloseKey(keyVal)
    CloseKey(aReg)

Ich erhalte folgende Fehlermeldung:

Traceback (most recent call last):
File "D:\PROJECT\project.py", line 305, in OnOk
keyVal=OpenKey(aReg,r"SOFTWARE\my path to\Registry", 0,KEY_WRITE)
WindowsError: [Error 5] Access is denied

Und um aus der Registrierung zu lesen, muss die gespeicherte Registrierung im Einstellungsfenster erscheinen. Ich habe es mit dem folgenden Code versucht. Obwohl es funktioniert, aber nicht zufrieden mit der Art und Weise, wie ich es programmiert habe. Hilf mir für die bessere Lösung

key = OpenKey(HKEY_CURRENT_USER, r'Software\my path to\Registry', 0, KEY_READ)
    for i in range(4): 
        try:
            n,v,t = EnumValue(key,i)
            if i==0:
                self.field2.SetValue(v)
            elif i==1:
                self.field3.SetValue(v)
            elif i==2:
                self.field4.SetValue(v)
            elif i==3:
                self.field1.SetValue(v)
        except EnvironmentError:                                               
            pass
CloseKey(key)

Antworten auf die Frage(7)

Ihre Antwort auf die Frage