с помощью regedit.exe Я вручную создал ключ в реестре под названием
HKEY_CURRENT_USER / 00_Just_a_Test_Key
и создал два значения dword
dword_test_1 и dword_test_2
Я пытаюсь записать некоторые значения в эти два ключа, используя следующую программу
import _winreg
aReg = _winreg.ConnectRegistry(None,_winreg.HKEY_CURRENT_USER)
aKey = _winreg.OpenKey(aReg, r"00_Just_a_Test_Key", 0, _winreg.KEY_WRITE)
_winreg.SetValueEx(aKey,"dword_test_1",0, _winreg.REG_DWORD, 0x0edcba98)
_winreg.SetValueEx(aKey,"dword_test_2",0, _winreg.REG_DWORD, 0xfedcba98)
_winreg.CloseKey(aKey)
_winreg.CloseKey(aReg)
Я могу написать в первый ключ, dword_test_1, но когда я пытаюсь записать во второй, я получаю следующее сообщение
Traceback (most recent call last):
File "D:/src/registry/question.py", line 7, in <module>
_winreg.SetValueEx(aKey,"dword_test_2",0, _winreg.REG_DWORD, 0xfedcba98)
ValueError: Could not convert the data to the specified type.
Как мне записать второе значение 0xfedcba98 или любое значение больше 0x7fffffff
в качестве значения dword?
Первоначально я писал сценарий для включения или отключения значка «Мои документы», написав «0xf0500174» для скрытия или «0xf0400174» для отображения значка в [HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ CLSID {450D8FBA-AD25 -11D0-98A8-0800361B1103} \ ShellFolder]