[gelöst] os.fork ... externes Programm wird immer doppelt ge

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
PepeCyB
User
Beiträge: 14
Registriert: Dienstag 3. Januar 2006, 18:47
Wohnort: Berlin
Kontaktdaten:

Montag 19. März 2007, 17:50

Hallo,

ich wurschtele gerade weiter an einem kleinen Programm zur Erstellung von Verkaufstexten für eBay (nutzt PyQt... ist hier aber kein PyQt-Problem). Nun wollte ich eine Hilfe-Funktion einbauen, bei der der Web-Browser Konqueror mit meiner HTML-Hilfedatei geöffnet wird.
Der Aufruf der Sub führt aber immer zum zweifachen Start des Konqueror. Woran mag das liegen?

Gruß Daniel

Code: Alles auswählen

.
.
import os
from posix import execv
.
.
.

def helpContents(self):
    pid = os.fork()
    if pid == 0:
        status = execv("/usr/bin/konqueror",("--profile webbrowsing","eBayEd.html"))
        os.wait()
Zuletzt geändert von PepeCyB am Montag 19. März 2007, 21:58, insgesamt 1-mal geändert.
querdenker
User
Beiträge: 424
Registriert: Montag 28. Juli 2003, 16:19
Wohnort: /dev/reality

Montag 19. März 2007, 20:48

Wie wäre es mit subprocess?

mfg, querdenker
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Montag 19. März 2007, 21:55

Oder überhaupt - webbrowser.

(Das sollte wohl auch mit file:///-URLs zurechtkommen)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
PepeCyB
User
Beiträge: 14
Registriert: Dienstag 3. Januar 2006, 18:47
Wohnort: Berlin
Kontaktdaten:

Montag 19. März 2007, 21:56

Danke für den Tip!
Hab mich mal mit "subprocess" auseinandergesetzt... und den Fehler gefunden.
Allerdings lag es nicht am Aufruf des Prozesses, sondern war doch ein Qt/PyQt-Problem.

Ich hatte die Sub versehentlich mit dem Signal "activated()" statt mit "clicked()" verbunden.
Nun klappt's... :D

Gruß Daniel
Antworten