Как решить "[Ошибка 5] Доступ запрещен" при добавлении данных в реестр Windows в Python
Это мой код:
import _winreg
import sys
try:
key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, 'Software\Microsoft\Windows\CurrentVersion\Run',
_winreg.KEY_SET_VALUE)
_winreg.SetValueEx(key, 'pytest', 0, _winreg.REG_BINARY, 'C:\Users\Default\Desktop\est.py')
_winreg.QueryInfoKey(key)
key.Close()
print "Successfully Added"
except:
print "Unexpected error:", sys.exc_info()[1],sys.exc_info()[0]
я сделал выход из этого, делая
pyinstaller.exe --onefile testDemo.py
он создает файл "testDemo.exe". когда я пытаюсь запустить его в cmd[с режимом администратора или без него], я получаю это.
Unexpected error: [Error 5] Access is denied <type 'exceptions.WindowsError'>
как это решить?
1 ответ
Решение
3-й зарезервированный параметр пропущен при вызове OpenKey.
winreg.OpenKeyEx (ключ, sub_key, зарезервировано =0, доступ = KEY_READ)
reserved является зарезервированным целым числом и должно быть равно нулю. По умолчанию это ноль.