Kontextmenü-Anwendung nicht gefunden

Kontextmenü-Anwendung nicht gefunden

Vor einiger Zeit habe ich ein Skript, das ich geschrieben hatte, zum Kontextmenü hinzugefügt. Ich habe es eine Weile nicht gebraucht und es behalten. Heute habe ich versucht, es erneut zu verwenden, aber es hat nicht funktioniert.

Ich habe unten ein Bild des Fehlers eingefügt. Der Titel und die erste Zeile zeigen das von mir ausgewählte Verzeichnis.

Ich weiß mit Sicherheit, dass der Pfad zum Befehl gültig ist und funktioniert, da ich das Skript in der Eingabeaufforderung getestet habe.

Der fragliche Fehler

Was kann ich tun, um diesen Fehler zu beheben? Dies ist unter Windows 10 der Fall, falls sich dadurch etwas ändert. Der Befehl lautet wie folgt:

python M:\Sped\python\Extract\extract.py "%1"

Antwort1

Wenn dieser Fehler angezeigt wird, ist wahrscheinlich der Ordnerpfad falsch und/oder das Shell-Kontextmenü hat Probleme mit Ihren Python-Skriptaufrufen.

Mit diesem Ansatz habe ich den Fehler erfolgreich behoben.

Erstellen der Registrierungsdateimypthonprog.regDatei ähnlich dieser:

[HKEY_CLASSES_ROOT\Folder\shell\mypythonprog]
@="mypythonprog"
"Icon"="C:\\Users\\winuser\\AppData\\Local\\Programs\\Python\\Python311\\python.exe ,0"

[HKEY_CLASSES_ROOT\Folder\shell\mypthonprog\Command]
@="c:\\\\mypath\\\\subfolder\\\\myprog.cmd \"%1\""

Der Name Ihres Kontextmenüelements kann geändert werden vonAbonnierenzu dem, was Sie verwenden möchten, und ändern Sie bei Bedarf den Symbolpfad.

Der Pfad der Befehlsdatei kann an den Speicherort in Ihrem Dateisystem geändert werden (vorzugsweise dauerhaft).

Erstellen Sie die cmd-Dateimyprog.cmdähnlich wie dies:

"C:\Users\winuser\AppData\Local\Programs\Python\Python311\python.exe" "c:\mypath\subfolder\mypyprog.py" %1

Der Pfad des Python-Speicherorts sollte in den Speicherort geändert werden, an dem Sie Python installiert haben.

Ändern Sie die Python-Dateimypyprog.pyähnlich wie dies:

def main():
    # Check if a folder path is passed as an argument
    if len(sys.argv) < 2:
        print("Folder path not provided.")
        sys.exit(1)

    folder_path = sys.argv[1]

Dadurch wird der Python-Code auf den Ordnerparameter aufmerksam, den Sie übergeben.

verwandte Informationen