python注册表操作_Python winreg 注册表操作以及如何添加右键快捷菜单

本文介绍了Python的winreg库用于注册表操作,包括权限问题、OpenKey、SetValue与SetValueEx、DeleteValue、DeleteKey等功能,并展示了如何通过Python代码实现右键菜单的关联,特别提到了注册表键的递归删除方法。
摘要由CSDN通过智能技术生成

吐槽

先吐槽下,Python的注册表操作库,winreg真是难用

权限问题

写完的Python脚本必须用管理员权限运行,才能对注册表进行写操作。否则会报PermissionError异常

这个时候需要调用Windows的API,重新启动一遍程序 runas administrator,将原来的程序退出。

代码也很简单

from __future__ import print_function

import ctypes, sys

def is_admin():

try:

return ctypes.windll.shell32.IsUserAnAdmin()

except:

return False

if is_admin():

# 将要运行的代码加到这里

else:

if sys.version_info[0] == 3:

ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)

else:#in python2.x

ctypes.windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(__file__), None, 1)

Python代码实现注册表编辑

改成Python代码怎么写呢。这里需要用到python的winreg库。(Python2的叫_winreg)

OpenKey

先说下OpenKey这个函数的返回值可以作为下面函数的第一个参数。

SetValue, SetValueEx, DeleteValue,CreateKey, DeleteKey 等等

看下这个函数的用法

Opens the specified key.

key

An already open key, or any one of the predefined

sub_key

A string that identifies the sub_key to open.

reserved

A reserved integer that must be zero. Default is

access

An integer that specifies an access mask that desc

security access for

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值