Seite 1 von 1

Dateityp an Python File binden

Verfasst: Mittwoch 16. Januar 2008, 11:49
von mr.hide
Hallo,

ich habe folgendes Problem(vorrangig wird es unter linux laufen):

Ich will einen Dateityp (z.B. *.err ) bei doppelklick mit einem bestimmten Python file öffnen. Das kriege ich auch hin, mit batchfile oder ähnlichem.

Nur will ich, dass wenn das Python Programm das für die Ausführung verantwortlich ist, dass dieses auch die Datei öffnet und kein neues Programm gestartet wird.

Dazu muss ich folgende Probleme lösen:
  • -läuft schon das python programm
    -wenn ja wie bringe ich es dazu das file zu öffnen, d.h. eine bestimmte funktion mit einem bestimmten parameter aufzurufen.
Meine Lösungsidee wäre über einen Semaphore (gibts das in Python?) zu regeln ob das Programm bereits läuft. (Schöner wäre wohl es über die Prozessliste in Linux zu machen, aber da weiß ich bis jetzt nur zu testen ob der python interpreter läuft, nicht welches .py file)
Wenn es läuft dann ein Signal an das Programm zu schicken, wie löst man das elegant?

Hoffe ihr versteht was ich mein und habt nen kleinen Tip

Gruß

Verfasst: Mittwoch 16. Januar 2008, 14:18
von mr.hide
hab jetzt ne relativ einfache lösung:

ich mach nen tcpserver auf dem localhost.
am start des programms versuch ich auf den zu verbinden, klappt das, ist bereits eine instanz dieses programmes aktiv, und ich kann ihm gleich sagen was für eine datei er öffnen soll.

Verfasst: Mittwoch 16. Januar 2008, 16:57
von Leonidas
Mit XML-RPC wäre es sogar noch einfacher.

Verfasst: Mittwoch 16. Januar 2008, 17:14
von mr.hide
Da ich mit QT arbeite hab ich mich dafür entschieden, dann müssen nicht so viel bibliotheken verwedet werden. War da auch nciht wesentlich schwerer :wink:

Aber hätte es grundsätzlich einen eleganteren Ansatz gegeben?

Verfasst: Mittwoch 16. Januar 2008, 17:28
von Leonidas
mr.hide hat geschrieben:Da ich mit QT arbeite hab ich mich dafür entschieden, dann müssen nicht so viel bibliotheken verwedet werden.
Und wo brauchst du für XML-RPC zusätzliche Bibliotheken? XML-RPC ist in der Stdlib.

Verfasst: Mittwoch 16. Januar 2008, 17:42
von mr.hide
Ja, da hab ich mich unverständlich ausgedrückt.
Kurz wenns in Qt geht soll ich Qt verwenden.

Hier sind viele C und C++ Programmierer die froh sind, wenn so viel wie möglich in Qt statt Python geschrieben ist; leider.