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中itertools模块用法详解
Sep 25 Python
Python的加密模块md5、sha、crypt使用实例
Sep 28 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
Jun 07 Python
Python多层嵌套list的递归处理方法(推荐)
Jun 08 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
Jun 29 Python
利用python实现xml与数据库读取转换的方法
Jun 17 Python
Python OpenCV 直方图的计算与显示的方法示例
Feb 08 Python
python实现csv格式文件转为asc格式文件的方法
Mar 23 Python
python 随机打乱 图片和对应的标签方法
Dec 14 Python
使用python 打开文件并做匹配处理的实例
Jan 02 Python
pytorch 共享参数的示例
Aug 17 Python
Python环境搭建过程从安装到Hello World
Feb 05 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
用定制的PHP应用程序来获取Web服务器的状态信息
2006/10/09 PHP
PHP教程之PHP中shell脚本的使用方法分享
2012/02/23 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
PHP中file_get_contents高?用法实例
2014/09/24 PHP
PHP获取文件夹内文件数的方法
2015/03/12 PHP
PHP获取redis里不存在的6位随机数应用示例【设置24小时过时】
2017/06/07 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
JavaScript中的私有成员
2006/09/18 Javascript
JavaScript类和继承 this属性使用说明
2010/09/03 Javascript
jQuery中extend()和fn.extend()方法详解
2015/06/03 Javascript
jQuery插件实现文字无缝向上滚动效果代码
2016/02/25 Javascript
BootStrap fileinput.js文件上传组件实例代码
2017/02/20 Javascript
nodejs处理图片的中间件node-images详解
2017/05/08 NodeJs
javascript 封装Date日期类实例详解
2017/05/28 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
js实现时钟定时器
2020/03/26 Javascript
解决vue组件销毁之后计时器继续执行的问题
2020/07/21 Javascript
JavaScript逻辑运算符相关总结
2020/09/04 Javascript
python中ConfigParse模块的用法
2014/09/29 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
python pandas库中DataFrame对行和列的操作实例讲解
2018/06/09 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
详解python中的线程与线程池
2019/05/10 Python
用opencv给图片换背景色的示例代码
2020/07/08 Python
用Python实现童年贪吃蛇小游戏功能的实例代码
2020/12/07 Python
为中国消费者甄选天下优品:网易严选
2016/08/11 全球购物
英国最受欢迎的价格比较网站之一:MoneySuperMarket
2018/12/19 全球购物
请写出 BOOL flag 与"零值"比较的 if 语句
2016/02/29 面试题
南京某软件公司的.net面试题
2015/11/30 面试题
热爱祖国演讲稿
2014/05/04 职场文书
英语教研活动总结
2014/07/02 职场文书
2015年业务工作总结范文
2015/04/10 职场文书
新闻稿怎么写
2015/07/18 职场文书
python3.7.2 tkinter entry框限定输入数字的操作
2021/05/22 Python