Aggiungi al menu contestuale


5

Quindi sto cercando di creare un piccolo script Python che estrarrà tutti gli elementi da una cartella nella sua directory principale. Lo script funziona bene, ma voglio aggiungerlo al menu di scelta rapida, quindi ogni volta che faccio clic con il pulsante destro del mouse su una cartella, viene elencato.

Ho seguito questa guida ma ho avuto alcuni problemi:

  1. Funziona solo su file, non su cartelle.
  2. Viene visualizzato l'errore "Impossibile eseguire questa app sul tuo PC" (probabilmente a causa di Win10)

Insieme a questi problemi, come posso aggiungerlo alla sua sezione nel menu contestuale?


Dai un'occhiata alle risposte a questa domanda SE: stackoverflow.com/questions/20449316/… - sembra che la chiave di registro nella guida che hai seguito sia il collegamento ai file. Se si rimuove il livello "Sfondo", questo indirizza le directory.
Kinnectus,

Risposte:


2

per il tuo primo problema:

Assicurati di aggiungere la chiave al genitore giusto:

  • HKEY_CLASSES_ROOT\Directory\shell quando si desidera fare clic con il tasto destro su una cartella
  • HKEY_CLASSES_ROOT\Directory\Background\shell quando si desidera fare clic con il tasto destro nella finestra della cartella

se vuoi aggiungere una voce di contesto per i file, è un po 'più complicato. Normalmente lo aggiungi per tipi di file specifici (estensioni specifiche). Se vuoi aggiungerlo per ogni tipo, c'èHKEY_CLASSES_ROOT\*

per il tuo secondo problema:

È necessario eseguire l'applicazione Python con lo script come argomento. (e quindi probabilmente "%1"per il file su cui hai fatto clic con il pulsante destro del mouse come secondo argomento) Se avvii lo script facendo doppio clic su di esso o digitandolo in una finestra di comando, il sistema cerca l'applicazione Python e lo esegue con lo script come un discussione.

Quindi questo è ciò che devi inserire nella chiave di registro: c:\path\to\your\python.exe c:\path\to\yourScript.py "%1"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.