python3操作注册表的方法(Url protocol)

 更新时间:2020年02月05日 13:30:03   作者:youyou_builder  
使用python操作注册表的方法最近学习了一下,现在做一下笔记,由于对Python语言的使用还不是很熟练,所以写不出高大上的结构

使用python操作注册表的方法最近学习了一下,现在做一下笔记,由于对Python语言的使用还不是很熟练,所以写不出高大上的结构,但是解决问题搓搓有余了。

说道注册表顺便也说一说环境变量的修改(放下下一节讲),里面有许多相似的地方,我觉得放在一起说会比较合适。

操作注册表

操作注册表主要引入winreg包,winreg包是python3自带的包,python2的名字和python3有区别_winreg,在这里只关注python3

key = winreg.OpenKeyEx(winreg.HKEY_CLASSES_ROOT, r"路径的名字")

OpenKeyEx打开一个注册表,路径不写就是根目录,给个图大家就明白了

点击确定打开windows注册表

上面写的winreg.HKEY_CLASSES_ROOT,就是上图中其中之一,想要打开哪个就写哪个的名字 •新建一个分支

newKey = winreg.CreateKey(key,"文件名")

•获取当前名称对应的值

winreg.QueryValueEx(key, '名称')

例如:winreg.QueryValueEx(key, 'PATH')

•设置当前目录下的值

winreg.SetValueEx(key,"名称",0,winreg.REG_EXPAND_SZ, "值")

例子:

key = winreg.OpenKeyEx(winreg.HKEY_CLASSES_ROOT, r"")
 #创建新的键
 newKey = winreg.CreateKey(key,"aTest")
 #给新创建的键添加键值
 winreg.SetValueEx(newKey,"a1",0,winreg.REG_EXPAND_SZ,"aaa")
 winreg.SetValueEx(newKey,"b1","star",1, "bbb")
 #创建新的子键
 key = winreg.OpenKeyEx(winreg.HKEY_CLASSES_ROOT, r"aTest")
 newKey = winreg.CreateKey(key,"DefaultIcon")
 winreg.SetValueEx(newKey,"",0,winreg.REG_EXPAND_SZ, "path ,1")

 newKey = winreg.CreateKey(key,"shell")
 key = winreg.OpenKeyEx(winreg.HKEY_CLASSES_ROOT, r"aTest\shell")
 newKey = winreg.CreateKey(key,"open")
 key = winreg.OpenKeyEx(winreg.HKEY_CLASSES_ROOT, r"aTest\shell\open")
 newKey = winreg.CreateKey(key,"command")
 winreg.SetValueEx(newKey,"url",0,winreg.REG_EXPAND_SZ, "\"path\" \"%1\"")

以上例子可以使用Url protocol,使用浏览器启动本地exe。直接将上文中的path换成本地exe的路径就可以了。

Python 操作注册表

通过Python的内置模块winreg这里主要给出一些winreg的Demo代码

Python2:import _winreg、Python3:import winreg

#!python37
# -*- coding: utf-8 -*-
# coding:utf-8

import winreg

def obtain():

  # 获取该键的所有键值
  key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r"Software\\Inspiry\\BasePay\\Address")

  # 获取该键的所有键值,遍历枚举
  try:
    i = 0
    while 1:
  # EnumKey用来枚举子键,EnumValue方法用来枚举键值,
      name, value, type1 = winreg.EnumValue(key, i)
      # print(repr(name),value)

      return value
      i +=1
  except WindowsError:
    print('error')

if __name__ == '__main__':
  obtain()

好了这篇文章就介绍到这了,希望以后多多支持脚本之家。

相关文章

  • python使用clear方法清除字典内全部数据实例

    python使用clear方法清除字典内全部数据实例

    这篇文章主要介绍了python使用clear方法清除字典内全部数据,实例分析了Python中clear方法清空字典内数据的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Selenium使用Chrome模拟手机浏览器方法解析

    Selenium使用Chrome模拟手机浏览器方法解析

    这篇文章主要介绍了Selenium使用Chrome模拟手机浏览器方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 基于python分析你的上网行为 看看你平时上网都在干嘛

    基于python分析你的上网行为 看看你平时上网都在干嘛

    这篇文章主要介绍了基于python分析你的上网行为 看看你平时上网都在干嘛,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 详解Python的连接符

    详解Python的连接符

    这篇文章主要为大家介绍了Python的连接符,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • Django中对通过测试的用户进行限制访问的方法

    Django中对通过测试的用户进行限制访问的方法

    这篇文章主要介绍了Django中对通过测试的用户进行限制访问的方法,Django是众多Python高人气web框架中最为著名的一个,需要的朋友可以参考下
    2015-07-07
  • selenium+python 去除启动的黑色cmd窗口方法

    selenium+python 去除启动的黑色cmd窗口方法

    今天小编就为大家分享一篇selenium+python 去除启动的黑色cmd窗口方法。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Python字符串详细介绍

    Python字符串详细介绍

    这篇文章主要介绍了Python字符串详解,本文讲解了字符串相关知识、字符串的一些特性、原始字符串、unicode字符串、字符串的常用操作方法、内建函数列表等内容,需要的朋友可以参考下
    2015-05-05
  • python实现发送邮件及附件功能

    python实现发送邮件及附件功能

    这篇文章主要为大家详细介绍了python实现发送邮件及附件功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • pandas实现excel表格处理并读取指定sheet的方法

    pandas实现excel表格处理并读取指定sheet的方法

    这篇文章主要介绍了pandas实现excel表格处理并读取指定sheet的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-02-02
  • django ObjectDoesNotExist 和 DoesNotExist的用法

    django ObjectDoesNotExist 和 DoesNotExist的用法

    这篇文章主要介绍了django ObjectDoesNotExist 和 DoesNotExist的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07

最新评论