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

1.需求拆解:

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

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

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

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",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,win32con.REG_SZ,"\"C:\Program Files (x86)\Youdao\YoudaoNote\YoudaoNote.exe\" \"%1\"")

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

python右键弹出菜单编写_python实现应用程序在右键菜单中添加打开方式功能相关推荐

  1. python在线投票系统 统计票数_python投票统计程序,统计序列中各个数值的份数,字典的应用。...

    这里可能会用到字典的知识, 字典主要是用来存储最后的统计结果. 字典的用法:http://www.runoob.com/python/python-dictionary.html https://ww ...

  2. windows右键菜单中添加打开方式

    原文地址;https://jingyan.baidu.com/article/08b6a591f334f914a809223b.html 1.打开注册表编辑器.打开运行窗口,快捷键,开始+R.输入&q ...

  3. 右键添加打开方式 windows

    目的 比如在安装一个软件时候,途中有一项是否添加到右键记录当中.当时觉得右键东西过多没有选择,而后发现每次打开很麻烦需要在右键中添加打开方式. 操作 打开注册表编辑器.打开运行窗口输入(开始+R).输 ...

  4. vc+如何添加右键弹出菜单

    2019独角兽企业重金招聘Python工程师标准>>> 一.创建新工程 二.编辑菜单资源 1.添加菜单 按"Ctrl+R",双击"Menu"图 ...

  5. DirectUI界面编程(六)实现右键弹出菜单

    本节向大家介绍一下右键弹出菜单是如何实现的.效果如下,在窗口中点击鼠标右键弹出菜单,点击菜单项能够响应菜单点击事件. 使用Duilib库实现的弹出菜单,实际上也是一个Windows窗口,因此我们需要创 ...

  6. 右键弹出菜单和快捷键的设置

    写MFC,少不了用到菜单和快捷键,此处我用到了右键菜单.我的项目是一个播放器的实现,那么在屏幕中央右键点击,应该会弹出右键菜单,比如播放,暂停等,如我这样: 对应的每一个菜单应该还有相应的快捷键.那么 ...

  7. 孙鑫VC++深入详解:Lesson6 Part3 ---创建右键弹出菜单 TrackPopupMenu

    1 -----增加右键弹出菜单方法一:      Project-->Add to Project-->Components and Controls -->Visual C++ C ...

  8. 机器性能这么好,为什么点击右键弹出菜单还这么慢?

    为什么80%的码农都做不了架构师?>>>    我想很多人估计遇到过这样的问题,一开始估计会怀疑是系统问题或者是有什么硬件瓶颈. 其实不然, 在与一位同事交流后发现,其实问题的原因很 ...

  9. QQ截屏 抓级联菜单、下拉菜单及右键弹出菜单图

    QQ方便的截屏功能大家都已经玩过了,又给聊天增添了不少乐趣.只要在浏览网页时发现什么值得共享的东东,单击捕捉屏幕按钮即可搞定.这对那些被QQ尾巴整怕了,看到链接就会浑身发抖的人来说,可以长舒一口气了. ...

最新文章

  1. Mongodb地理空间索引
  2. app专项测试(稳定性测试、安全性测试)
  3. 打算自己做app,你们做过吗?
  4. 深度学习-Tensorflow2.2-深度学习基础和tf.keras{1}-优化函数,学习速率,反向传播,网络优化与超参数选择,Dropout 抑制过拟合概述-07
  5. 骗子是这样把1G硬盘变成120G的
  6. 探访物联网安全新边界 文印保护成思维盲区
  7. 使用uWSGI部署django项目
  8. Java-三元运算符
  9. php 组,PHP: 子组(子模式) - Manual
  10. edit box小技巧
  11. WPF TextBox/TextBlock 文本超出显示时,文本靠右显示
  12. net导出到excel数字变为科学技术法
  13. Weblogic之端口查看
  14. 浪潮服务器装显卡和显卡驱动
  15. 中移动入侵防御设备集采,总限价1.6亿;爱立信斩获95个5G商用合同
  16. Javascript使用三大家族和事件来DIY动画效果相关笔记(六)
  17. FaWave恢复twitter的办法
  18. Histogram equalization
  19. php机器人聊天对话框,基于AIML的PHP聊天机器人
  20. Deep Crossing——经典的深度学习架构

热门文章

  1. 跨境电商适合做独立站吗?是入平台好还是独立站好?
  2. 数学建模3 插值算法
  3. 花书+吴恩达深度学习(八)优化方法之 Batch normalization
  4. 【差分约束】POJ3159/LG P1993 小K的农场
  5. CentOS 7 Graylog安装
  6. 灵活强大的MySQL代理中间件ProxySQL应用实战(2)
  7. Kotlin协程的迷惑
  8. 计算机图形图像发展前景,计算机图形学发展前景有什么趋势?
  9. 若依mybatis返回map将下划线命名转为驼峰式命名
  10. Fiddler安装教程(图文版)