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 3实现发送邮件功能
Jun 15 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
Python简单基础小程序的实例代码
Apr 28 Python
django 连接数据库 sqlite的例子
Aug 14 Python
Python datetime包函数简单介绍
Aug 28 Python
学习Django知识点分享
Sep 11 Python
PyCharm2019安装教程及其使用(图文教程)
Sep 29 Python
python集合的创建、添加及删除操作示例
Oct 08 Python
使用pyhon绘图比较两个手机屏幕大小(实例代码)
Jan 03 Python
Tensorflow 实现释放内存
Feb 03 Python
python制作微博图片爬取工具
Jan 16 Python
python 多线程爬取壁纸网站的示例
Feb 20 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
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
div li的多行多列 无刷新分页示例代码
2013/10/16 PHP
php中的boolean(布尔)类型详解
2013/10/28 PHP
CI框架整合smarty步骤详解
2016/05/19 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
Laravel框架控制器的middleware中间件用法分析
2019/09/30 PHP
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
JS.findElementById()使用介绍
2013/09/21 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
防止登录页面出现在frame中js代码
2014/07/22 Javascript
JavaScript 作用域链解析
2014/11/13 Javascript
微信小程序 教程之事件
2016/10/18 Javascript
Windows系统下安装Node.js的步骤图文详解
2016/11/15 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
vue动态设置页面title的方法实例
2020/08/23 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
Python的爬虫包Beautiful Soup中用正则表达式来搜索
2016/01/20 Python
Python判断变量名是否合法的方法示例
2019/01/28 Python
如何学习Python time模块
2020/06/03 Python
8种常用的Python工具
2020/08/05 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
HTML5是什么 HTML5是什么意思 HTML5简介
2012/10/26 HTML / CSS
俄罗斯品牌服装在线商店:VIPAVENUE
2020/08/10 全球购物
毕业生简单求职信
2013/11/19 职场文书
安全保证书范文
2014/04/29 职场文书
政治表现评语
2014/05/04 职场文书
小学优秀辅导员事迹材料
2014/05/11 职场文书
入党综合考察材料
2014/06/02 职场文书
党员反对四风思想汇报范文
2014/10/25 职场文书
2014年组织委员工作总结
2014/12/01 职场文书
汽车转让协议书范本
2014/12/07 职场文书
逃课检讨书
2015/01/26 职场文书
小学毕业教师寄语
2019/06/21 职场文书
Nginx URL重写rewrite机制原理及使用实例
2021/04/01 Servers
厉害!这是Redis可视化工具最全的横向评测
2021/07/15 Redis