python 使用_winreg 模块操作注册表

一、基本操作

python 中的_winreg 模块提供了对于 windows 平台下注册表的一些基本操作,包括对键值的枚举以及增加删除键等,以 HKEY_CURRENT_USERConsole 为例:

  • OpenKey(key, subKey):打开一个键,第一个参数是常量,例如 reg.HEKY_CURRENT_USER,已经被系统定义好。
  • CloseKey(key):关闭打开的键。
  • EnumKey(key, index):枚举所有的 key
  • EnumValue(key, index):枚举所有的 value,有三个返回值:键值名键值键类型

例如,枚举上面注册表所有的键值:

输出:

二、增加和删除键值

  • CreateKey(key, sub_key):创建一个新键,如果键存在就不会创建。
  • SetValueEx(key, value_name, reserved, type, value):给一个键值赋值,如果键不存在将会自动创建。
  • SetValue(key, sub_key, type, value):设置一个子键,并给予一个默认值 value
  • DeleteKey(key, sub_key):删除键

示例:

运行后的结果:

三、问题

3.1 WindwosError: Error 5

没有权限导致的,OpenKey 中的 sam 变量表明了操作的权限,默认是 KEY_READ,改成 KEY_ALL_ACCESS 然后以管理员身份运行即可。例如:

 

 

发表评论