python操作注册表(Url protocol浏览器启动本地程序)

使用python操作注册表的方法最近学习了一下,现在做一下笔记,由于对Python语言的使用还不是很熟练,所以写不出高大上的结构,但是解决问题搓搓有余了。
说道注册表顺便也说一说环境变量的修改(放下下一节讲),里面有许多相似的地方,我觉得放在一起说会比较合适。

操作注册表

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

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

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


image.png

点击确定打开windows注册表


image.png

上面写的winreg.HKEY_CLASSES_ROOT,就是上图中其中之一,想要打开哪个就写哪个的名字
  • 新建一个分支
newKey = winreg.CreateKey(key,"文件名")
  • 获取当前名称对应的值
winreg.QueryValueEx(key, '名称')

image.png

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,428评论 2 89
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 137,149评论 19 139
  • 第一部分 Python基础篇(80题) 1、为什么学习Python? Python相对于其他编程语言有很多优点: ...
    清清子衿木子水心阅读 1,868评论 0 1
  • 人生地不熟的突然感觉有点伤感,这不是我家,这里没有我的亲人没有我想要什么就有什么的放肆。
    古巴士阅读 280评论 0 0
  • 有人抓了一把沙,佛说:一沙一世界一叶一菩提!所以,很多人就把自己手里捏的那点沙子当成了世界!但,这其实是个技术活,...
    一声笑阅读 358评论 0 0

友情链接更多精彩内容