python 使用_winreg 模块操作注册表

马谦马谦马谦 Python评论2,805字数 719阅读 2 分 23 秒阅读模式

一、基本操作

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

python使用_winreg模块操作注册表-图片1

  • 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):删除键

示例:

运行后的结果:

python使用_winreg模块操作注册表-图片2

三、问题

3.1 WindwosError: Error 5

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

 

 

 
马谦马谦马谦
  • 本文由 马谦马谦马谦 发表于 2017 年 12 月 3 日 11:34:43
  • 转载请务必保留本文链接:https://www.dyxmq.cn/program/code/python/python-regedit-winreg.html
python获取命令行参数 Python

python 获取命令行参数

一、概述 python 获取命令行参数有两种方法,一种是使用 sys 模块直接获取到所有的命令行参数,另一种是使用 getopt 来获取指定标记的参数,后者更灵活一点,但是也复杂一点。 二、 sys 模块获取参数 ...
Python SMTP发送邮件 Python

Python SMTP 发送邮件

一、概述 python 提供了两个包来提供 SMTP 邮件服务支持:smtplib 和 email,前者系统内置,后者需要通过 pip 或者其他方式手动安装。其中 smtplib 提供邮件发送功能,email...
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证