Python 2.6.4 の Windows バージョン: shell=True の使用時に subprocess.Popen() が失敗するかどうかを判断する方法はありますか?
shell=False の場合、Popen() は正常に失敗します
>>> import subprocess
>>> p = subprocess.Popen( 'Nonsense.application', shell=False )
Traceback (most recent call last):
File ">>> pyshell#258", line 1, in <module>
p = subprocess.Popen( 'Nonsense.application' )
File "C:\Python26\lib\subprocess.py", line 621, in __init__
errread, errwrite)
File "C:\Python26\lib\subprocess.py", line 830, in
_execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
しかし、shell=True の場合、Popen() 呼び出しが成功したかどうかを判断する方法がないようです。
>>> p = subprocess.Popen( 'Nonsense.application', shell=True )
>>> p
>>> subprocess.Popen object at 0x0275FF90>>>
>>> p.pid
6620
>>> p.returncode
>>>
アイデアを歓迎します。
よろしく、マルコム