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


Posted in Python onFebruary 05, 2020

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

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

操作注册表

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

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

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

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

点击确定打开windows注册表

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

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

•获取当前名称对应的值

winreg.QueryValueEx(key, '名称')

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

例如: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\"")

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

以上例子可以使用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 相关文章推荐
Python中实现对list做减法操作介绍
Jan 09 Python
Python 获取当前所在目录的方法详解
Aug 02 Python
python中set()函数简介及实例解析
Jan 09 Python
http请求 request失败自动重新尝试代码示例
Jan 25 Python
Python使用sorted对字典的key或value排序
Nov 15 Python
Python3.5字符串常用操作实例详解
May 01 Python
微信公众号token验证失败解决方案
Jul 22 Python
python 求定积分和不定积分示例
Nov 20 Python
Django restframework 框架认证、权限、限流用法示例
Dec 21 Python
完美解决jupyter由于无法import新包的问题
May 26 Python
python下载的库包存放路径
Jul 27 Python
python编程简单几行代码实现视频转换Gif示例
Oct 05 Python
Python tkinter模版代码实例
Feb 05 #Python
Python Scrapy框架第一个入门程序示例
Feb 05 #Python
python lambda函数及三个常用的高阶函数
Feb 05 #Python
Python 3.8 新功能大揭秘【新手必学】
Feb 05 #Python
TensorFlow学习之分布式的TensorFlow运行环境
Feb 05 #Python
TensorFlow MNIST手写数据集的实现方法
Feb 05 #Python
tensorflow之并行读入数据详解
Feb 05 #Python
You might like
linux命令之调试工具strace的深入分析
2013/06/03 PHP
jquery的颜色选择插件实例代码
2008/10/02 Javascript
javascript 显示当前系统时间代码
2009/12/28 Javascript
js中创建对象的几种方式示例介绍
2014/01/26 Javascript
js获取上传文件大小示例代码
2014/04/10 Javascript
Javascript WebSocket使用实例介绍(简明入门教程)
2014/04/16 Javascript
js调试工具console.log()方法查看js代码的执行情况
2014/08/08 Javascript
js事件监听机制(事件捕获)总结
2014/08/08 Javascript
JavaScript中计算网页中某个元素的位置
2015/06/10 Javascript
jQuery右下角旋转环状菜单特效代码
2015/08/10 Javascript
JavaScript 封装一个tab效果源码分享
2015/09/15 Javascript
js仿腾讯QQ的web登陆界面
2016/08/19 Javascript
JQuery遍历元素的父辈和祖先的方法
2016/09/18 Javascript
jQuery实现遮罩层登录对话框
2016/12/29 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
2017/02/23 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
深入理解JS的事件绑定、事件流模型
2018/05/13 Javascript
[10:21]2018DOTA2国际邀请赛寻真——Winstrike
2018/08/11 DOTA
[02:21]2018完美盛典章节片——初心
2018/12/17 DOTA
[01:28]国服启动器接入蒸汽平台操作流程视频
2021/03/11 DOTA
关于numpy中np.nonzero()函数用法的详解
2017/02/07 Python
Python实现的绘制三维双螺旋线图形功能示例
2018/06/23 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
python使用tornado实现登录和登出
2018/07/28 Python
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
python3 pygame实现接小球游戏
2019/05/14 Python
如何用C代码给Python写扩展库(Cython)
2019/05/17 Python
Python自定义聚合函数merge与transform区别详解
2020/05/26 Python
python的setattr函数实例用法
2020/12/16 Python
经济实惠的豪华背包和行李袋:Packs Project
2018/10/17 全球购物
澳大利亚优质的家居用品和生活方式公司:Bed Bath N’ Table
2019/04/16 全球购物
大型车展策划方案
2014/02/01 职场文书
高中生学期学习自我评价
2014/02/24 职场文书
初中英语演讲稿
2014/04/29 职场文书
师范生小学见习总结
2015/06/23 职场文书
如何在Mac上通过docker配置PHP开发环境
2021/05/29 PHP