Ich nahm das folgende Python Rezept von Activestate.org, dann fügte ich einfach die Methode zum Löschen des Schlüssels, aber ich bekomme Fehler 5, Zugriff verweigert, und der Schlüssel, es ist nur ein falscher Schlüssel, die ich habe gerade erstellt, um die Funktion auszuprobieren. Hier ist der CodePython RegDeleteKey Fehler 5 Zugriff verweigert
## {{{ http://code.activestate.com/recipes/576860/ (r2)
import win32api
import win32con
def regquerysubkeys(handle, key, keylist=[]):
#get registry handle
reghandle = win32api.RegOpenKeyEx(handle, key, 0, win32con.KEY_ALL_ACCESS)
try:
i = 0
#enumerates subkeys and recursively calls this function again
while True:
subkey = win32api.RegEnumKey(reghandle, i)
#the following is the line I added myself
win32api.RegDeleteKey(handle, key)
i += 1
#braintwister here ;-)
regquerysubkeys(handle, key + subkey + "\\", keylist)
except win32api.error as ex:
#If no more subkeys can be found, we can append ourself
if ex[0] == 259:
keylist.append(key)
#unexpected exception is raised
else:
raise
finally:
#do some cleanup and close the handle
win32api.RegCloseKey(reghandle)
#returns the generated list
print keylist
#call to the function
regquerysubkeys(win32con.HKEY_LOCAL_MACHINE, "SOFTWARE\\suga\\")
Das sind die Fehler, die ich in der Konsole bekomme.
Traceback (most recent call last):
File "C:\EclipseWorkspaces\csse120\MMS-auto\test1.py", line 34, in <module>
regquerysubkeys(win32con.HKEY_LOCAL_MACHINE, "SOFTWARE\\suga\\")
File "C:\EclipseWorkspaces\csse120\MMS-auto\test1.py", line 14, in regquerysubkeys
win32api.RegDeleteKey(handle, key)
pywintypes.error: (5, 'RegDeleteKey', 'Access is denied.')
Kann mir jemand dabei helfen?
Ich habe gelesen, dass in der Dokumentation, aber ich windowXp 32bit laufen, daher ich sollte ich nicht diese Art von Problem haben. – nassio
Seltsam, aber Antivirensoftware abschalten das gleiche Problem in meinem Fall beheben. –