Vielleichtt könnt ihr mir wieder helfen
Folgendes Problem:
Ich will für die laufzeit eines scripts etwas in der Registry ändern
d.h. alte werte speichern in einem backup file
werte überschreiben
skript ausführen
alte werte wieder reinlesen
Ich hab mich mit dem _winreg module beschäftigt aber folgendes problem:
die SaveKey Funktion tut nicht:
Bsp.:
Code: Alles auswählen
from _winreg import *
print r"*** Reading from SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***"
aReg = ConnectRegistry(None,HKEY_LOCAL_MACHINE)
aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run")
for i in range(1024):
try:
n,v,t = EnumValue(aKey,i)
print i, n, v, t
except EnvironmentError:
print "You have",i," tasks starting at logon..."
break
CloseKey(aKey)
print r"*** Writing to SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***"
aKey = OpenKey(aReg, r"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", 0, KEY_ALL_ACCESS)
try:
pass
## SetValueEx(aKey,"MyNewKey",0, REG_SZ, r"c:\winnt\explorer.exe")
except EnvironmentError:
print "Encountered problems writing into the Registry..."
try:
SaveKey(aKey,r'c:\test.reg')
except Exception,ex:
print ex
CloseKey(aKey)
CloseKey(aReg)
Code: Alles auswählen
*** Reading from SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***
0 Synchronization Manager XXXXXXXXXXXXx
2 XXXXX XXXXX
3 ATIModeChange Ati2mdxx.exe 1
....
You have 11 tasks starting at logon...
*** Writing to SOFTWARE\Microsoft\Windows\CurrentVersion\Run ***
[Errno 1314] Der Client besitzt ein erforderliches Recht nicht
Weis jemand was ich da falsch mache?
Ich habe nämlich Administrator rechte auf dem rechner, also die Datei z.B. kann ich sicher schreiben!