欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Python 技术篇-用win32库实现读取、添加、修改注册表的值实例演示

发布时间:2025/4/16 65 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python 技术篇-用win32库实现读取、添加、修改注册表的值实例演示 小编觉得挺不错的,现在分享给大家,帮大家做个参考.


注册表编辑器里默认有这 5 个根目录,每个目录的说明如下:

# -*- coding: UTF8 -*- # 日期:2020.12.15 # 作者:小蓝枣import win32api import win32con# 读取注册表 reg = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, 'SOFTWARE\\Policies\\Google\\Update', 0, win32con.KEY_ALL_ACCESS)def set_reg(reg, reg_name, reg_type, reg_value):"""作用:设置注册表参数0:注册表参数1:设置项的名字参数2:设置项的类型参数3:设置项的值"""win32api.RegSetValueEx(reg, reg_name, 0, reg_type, reg_value);# 设置注册表 set_reg(reg, "UpdateDefault", win32con.REG_DWORD, 0) set_reg(reg, "Python", win32con.REG_SZ, "小蓝枣")

修改完后刷新一下就生效了。

默认添加注册表项的话需要在指定路径下进行添加,如果原注册表里路径就是不全的,添加会报错,下面的方法可以实现在添加注册表前检测路径是否是完整的,不完整的话会自动进行补全。

因为用到了 traceback.format_exc(),所以使用时要提前导入下 traceback 库。
win32api.RegCreateKey(读取的注册表实体, "添加项的名字") 用来添加项。

def test_item(reg_path):"""作用:注册表项补全功能参数:检查输入的项路径是否完整,不完整自动添加项将其补全返回:读取注册表后的实体"""reg = ""try:reg = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, reg_path, 0, win32con.KEY_ALL_ACCESS)except Exception as e:if('系统找不到指定的文件。' in traceback.format_exc()):s = reg_pathindex = len(s) - s[::-1].index("\\");key = test_item(s[:index-1])win32api.RegCreateKey(key, s[index:])reg = win32api.RegOpenKey(key, s[index:], 0, win32con.KEY_ALL_ACCESS)return reg

喜欢的点个赞❤吧!

总结

以上是生活随笔为你收集整理的Python 技术篇-用win32库实现读取、添加、修改注册表的值实例演示的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。