Spawning a new UI process

Ed Leafe ed at leafe.com
Sat Nov 8 21:24:39 EST 2008


	I'm working on a wxPython app (well, a Dabo app, but it's basically  
the same thing) that presents the user with a selection of several  
wxPython apps that exist on their system. They choose one, and I want  
to then "launch" that app, as if they had typed "python myapp.py" from  
a terminal window. The initial app can either terminate or continue;  
that's not terribly important. The important thing is to get the  
selected app to run in a separate process.

	I've tried all the variants of os.spawn* and os.exec*, without  
success. Either nothing happens, or a Python interpreter is opened in  
the Terminal window I used to run the launcher. I want to do something  
like:

cd (appdir)
pth = os.path.join(os.getcwd(), "main.py")

followed by one of:

os.spawnl(os.P_NOWAIT, "main.py")
os.spawnl(os.P_NOWAIT, pth)
os.spawnl(os.P_NOWAIT, "python", pth)
os.spawnl(os.P_NOWAIT, "python", "main.py")
os.spawnl(os.P_NOWAIT, "/usr/bin/python", pth)
os.spawnl(os.P_NOWAIT, "/usr/bin/python", "main.py")

	The only result I've gotten is a Python interpreter is started, but  
the GUI app that should be launched by 'main.py' is never run.

	So what am I missing? How do I launch a python app in a separate  
process from another Python app?


-- Ed Leafe






More information about the Python-list mailing list