最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写
1.需求拆解:
如何实现手动添加右键菜单的打开方式:
Step1:打开注册表编辑器,Win+R->输入 “regedit”

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

2.代码实现
Method1:通过_winreg模块实现:
1 2 3 4 5 6 7 8 9 10 11 12 | 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\"" )
|
Salin selepas log masuk
Method2:通过win32api和win32con模块实现
1 2 3 4 5 6 7 8 9 10 11 12 | 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\"" )
|
Salin selepas log masuk
Atas ialah kandungan terperinci 详解python实现应用程序在右键菜单中添加打开方式步骤. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!