Wie kann ich Dateien mit meinem Programm beim Start öffnen?

1

Ich habe einen einfachen WAV-Player in Python geschrieben, aber die einzige Möglichkeit, Dateien damit abzuspielen, besteht darin, das Skript auszuführen und die Datei über den Dateidialog zu öffnen.

Wie kann ich das Skript dazu bringen, die Dateien wie folgt zu öffnen: Rechtsklick auf die Datei -> Öffnen mit -> Mein Skript?

Wenn Sie den Quellcode wollen, kommentieren Sie ihn und ich bearbeite die Frage.

user3790566
quelle

Antworten:

1

Das sieht so aus, wie du es willst. Stellen Sie einfach sicher, dass Ihr Python-Skript den Pfad zu einer Datei als Befehlszeilenargument empfangen kann.

Sie können auch versuchen, die Datei in der Haupt-Python-Datei python mypythonscript.py C:\path\to\my\file.txtabzulegen. Dies sieht so aus, als ob Sie eine Eingabeaufforderung eingeben würden.

Nathan.Eilisha Shiraini
quelle
2

Sie haben Ihr Betriebssystem nicht angegeben, daher gilt diese Antwort nur für Windows:

Wenn Sie möchten, dass nur mit der rechten Maustaste darauf zugegriffen werden kann, können Sie die Registrierung bearbeiten.

In diesem Fall müssen Sie Ihr Skript jedoch so codieren, dass es Konsolenparameter akzeptiert (dh, Sie können eine Konsole eingeben py myscript.py -filetoplay.wav -myargs).

Sie können dies mit dem sysModul tun (es sys.argvkann ausgewertet werden, um eine Liste von Parametern zu erhalten, beginnend mit dem Dateinamen), aber eine ausführliche Antwort darauf gehört nicht hierher. Fragen Sie bei stackoverflow, ob Sie dabei Hilfe benötigen.

Sobald Sie dies einmal ausgeführt haben, können Sie regeditden Befehl eingeben. Die Registrierung wird geöffnet und Sie können zu navigieren HKEY_CLASSES_ROOT\SystemFileAssociations\.wav\shell\Open with MyScript\command(wenn sie nicht vorhanden ist, erstellen Sie sie über Neu-> Schlüssel und rufen Sie sie entsprechend auf, wobei der letzte Befehl "Befehl" ist).

Dann wählen Sie "Befehl" und klicken mit der rechten Maustaste in das weiße Feld rechts. Dort legen Sie einen neuen Wert vom Typ an REG_SZ. Wählen Sie es aus, klicken Sie mit der rechten Maustaste auf-> Wert ändern, und fügen Sie dies als Wert ein:"C:\PathToYourPython\pythonw.exe" "C:\Path\to\MyScript.pyw" "%1"

Ja, mit allen Anführungszeichen.

das "%1"wird auf umgerechnet werden"path\of\filetoplay.wav"

Ich hoffe, das hilft.

Aprillomat
quelle