python实现应用程序在右键菜单中添加打开方式功能


Posted in Python onJanuary 09, 2017

最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写

1.需求拆解:

如何实现手动添加右键菜单的打开方式:

Step1:打开注册表编辑器,Win+R->输入 “regedit”

python实现应用程序在右键菜单中添加打开方式功能

Step2:在HKEY_CLASSES_ROOT/*/shell (或者HKEY_LOCAL_MACHINE/SOFTWARE/Classes/*/shell ,两个目录是一样的) 添加一个key:YNote,然后在该项中新建项command,然后再编辑字符串,添加应用程序的路径,最后再路径和名称的后面加上空格和“%1”,然后在右键就可以找到YNote的打开方式

python实现应用程序在右键菜单中添加打开方式功能

2.代码实现

Method1:通过_winreg模块实现:

import _winreg
from _winreg import KEY_ALL_ACCESS
with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Classes\*\shell") as key:
print key
newKey = _winreg.CreateKeyEx(key,"YNote",0,KEY_ALL_ACCESS)
sub_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,r"SOFTWARE\Classes\*\shell\YNote")
newsubKey = _winreg.CreateKey(sub_key,"command")
_winreg.SetValue(newsubKey,"(Default)",1,"\"C:\Program Files (x86)\Youdao\YoudaoNote\YoudaoNote.exe\" \"%1\"")

Method2:通过win32api和win32con模块实现

import win32api
import win32con
key = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE,r"SOFTWARE\Classes\*\shell")
newKey = win32api.RegCreateKey(key,"YNote")
sub_key = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE,r"SOFTWARE\Classes\*\shell\YNote")
newsubKey = win32api.RegCreateKey(sub_key,"command")
win32api.RegSetValue(newsubKey,"(Default)", win32con.REG_SZ,"\"C:\Program Files (x86)\Youdao\YoudaoNote\YoudaoNote.exe\" \"%1\"")

以上所述是小编给大家介绍的python实现应用程序在右键菜单中添加打开方式功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python字典get()方法用法分析
Apr 17 Python
Python聚类算法之基本K均值实例详解
Nov 20 Python
Python过滤列表用法实例分析
Apr 29 Python
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
Python比较配置文件的方法实例详解
Jun 06 Python
python+selenium 点击单选框-radio的实现方法
Sep 03 Python
关于ZeroMQ 三种模式python3实现方式
Dec 23 Python
python用Configobj模块读取配置文件
Sep 26 Python
Python基于Serializer实现字段验证及序列化
Nov 04 Python
Python代码覆盖率统计工具coverage.py用法详解
Nov 25 Python
python实现跨年表白神器--你值得拥有
Jan 04 Python
ubuntu系统下 python链接mysql数据库的方法
Jan 09 #Python
利用Python中unittest实现简单的单元测试实例详解
Jan 09 #Python
Python中的sort()方法使用基础教程
Jan 08 #Python
Python守护进程和脚本单例运行详解
Jan 06 #Python
Python 基础知识之字符串处理
Jan 06 #Python
详解Python中的相对导入和绝对导入
Jan 06 #Python
Python中取整的几种方法小结
Jan 06 #Python
You might like
Notice: Trying to get property of non-object problem(PHP)解决办法
2012/03/11 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
Yii框架常见缓存应用实例小结
2019/09/09 PHP
共享自己写一个框架DreamScript
2007/01/20 Javascript
Google Dart编程语法和基本类型学习教程
2013/11/27 Javascript
节点的插入之append()和appendTo()的用法介绍
2014/01/13 Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
2014/01/14 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
Three.js的使用及绘制基础3D图形详解
2017/04/27 Javascript
JS实现图片预览的两种方式
2017/06/27 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
2017/08/22 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
2020/07/26 Javascript
vue 组件简介
2020/07/31 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
2020/08/06 Javascript
Python访问纯真IP数据库脚本分享
2015/06/29 Python
玩转python爬虫之URLError异常处理
2016/02/17 Python
Python连接SQLServer2000的方法详解
2017/04/19 Python
浅谈python的深浅拷贝以及fromkeys的用法
2019/03/08 Python
python程序控制NAO机器人行走
2019/04/29 Python
Python异常继承关系和自定义异常实现代码实例
2020/02/20 Python
python手机号前7位归属地爬虫代码实例
2020/03/31 Python
详解移动端Html5页面中1px边框的几种解决方法
2018/07/24 HTML / CSS
阿迪达斯西班牙官方网站:adidas西班牙
2016/07/21 全球购物
Book Depository美国:全球领先的专业网上书店之一
2019/08/14 全球购物
商务英语大学生职业生涯规划书范文
2014/01/01 职场文书
环境建设实施方案
2014/03/14 职场文书
听课评语大全
2014/04/30 职场文书
充分就业社区汇报材料
2014/05/07 职场文书
读书之星事迹材料
2014/05/12 职场文书
2014年党的群众路线活动个人整改措施
2014/10/28 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
八年级语文教学反思
2016/03/03 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL
Python可视化神器pyecharts绘制地理图表
2022/07/07 Python