In <[EMAIL PROTECTED]>, bahoo wrote: > This line of code fails (see error message at the end), > > last_line = subprocess.Popen(["D:/release/win.exe 0.5 1000 100 D:/ > images/img.ppm out.ppm"], stdout=subprocess.PIPE).communicate()[0] > > but using "os.system" works: > os.system('D:/release/win.exe 0.5 1000 100 D:/images/img.ppm out.ppm') > > ---------- > C:/Python25/pythonw.exe -u "D:/run.pyw" > Traceback (most recent call last): > File "D:/run.pyw", line 59, in <module> > process_dir(mydir) > File "D:/run.pyw", line 52, in process_dir > segmentation (dir,f) > File "D:/run.pyw", line 35, in segmentation > last_line = subprocess.Popen(["D:/release/win.exe 0.5 1000 100 D:/ > images/img.ppm out.ppm"], stdout=subprocess.PIPE).communicate()[0] > File "C:\Python25\lib\subprocess.py", line 593, in __init__ > errread, errwrite) > File "C:\Python25\lib\subprocess.py", line 793, in _execute_child > startupinfo) > WindowsError: [Error 22] The filename, directory name, or volume label > syntax is incorrect > ----------- > > Can anyone tell me why?
You are trying to execute a program named:: D:/release/win.exe 0.5 1000 100 D:/images/img.ppm out.ppm Such a program does not exist on your computer. ;-) Give `subprocess.Popen()` a list with the program name and the individual arguments as elements instead. Ciao, Marc 'BlackJack' Rintsch -- http://mail.python.org/mailman/listinfo/python-list