Seite 1 von 1

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

Verfasst: Montag 19. März 2007, 17:50
von PepeCyB
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()

Verfasst: Montag 19. März 2007, 20:48
von querdenker
Wie wäre es mit subprocess?

mfg, querdenker

Verfasst: Montag 19. März 2007, 21:55
von Leonidas
Oder überhaupt - webbrowser.

(Das sollte wohl auch mit file:///-URLs zurechtkommen)

Verfasst: Montag 19. März 2007, 21:56
von PepeCyB
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