Maison >développement back-end >Tutoriel Python >Explication détaillée des étapes pour ajouter une méthode ouverte dans le menu contextuel d'une application utilisant Python

Explication détaillée des étapes pour ajouter une méthode ouverte dans le menu contextuel d'une application utilisant Python

高洛峰
高洛峰original
2017-03-27 16:35:232087parcourir

Récemment, un petit outil développé par l'équipe du projet a voulu ajouter une méthode d'ouverture dans le menu contextuel. En prenant Youdao Cloud Notes comme exemple, les exigences ont été démontées et le code écrit

. 1. Démontage des exigences :

Comment ouvrir le menu contextuel manuellement :

Étape 1 : Ouvrir le registre éditeur, Win +R->Entrez "regedit"

Explication détaillée des étapes pour ajouter une méthode ouverte dans le menu contextuel dune application utilisant Python

Étape 2 : Dans HKEY_CLASS ES_ROOT/*/shell (ou HKEY_LOCAL_MACHINE/SOFTWARE/Classes/*/shell, les deux répertoires sont les mêmes) Ajoutez une clé : YNote, puis créez une nouvelle commande item dans cet élément, puis éditez le string , ajoutez le chemin de l'application, et enfin ajoutez un espace et "%1" après le chemin et le nom, puis faites un clic droit pour trouver la méthode d'ouverture de YNote

Explication détaillée des étapes pour ajouter une méthode ouverte dans le menu contextuel dune application utilisant Python

2. Implémentation du code

Méthode1 : implémentée via le module _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\"")

Méthode 2 : Implémentée via les modules win32api et 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\"")


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn