On Tue, Jul 27, 2010 at 4:12 PM, Timothy W. Grove <tim_gr...@sil.org> wrote: > I am using the following code to hide the console window when launching a > subprocess under Windows. > > startupinfo = subprocess.STARTUPINFO() > startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW > startupinfo.wShowWindow = subprocess.SW_HIDE > > self.mplayer = Popen(args, > bufsize=0, #unbufferred > stdin=PIPE, > stdout=PIPE, > stderr=PIPE, > close_fds=False, > universal_newlines=True, > startupinfo=startupinfo > ) > > This worked okay in using the subprocess module under python 2.6, but under > python 2.7 I get the error: > > Exception in thread Thread-1: > Traceback (most recent call last): > File "threading.pyo", line 530, in __bootstrap_inner > File "gui\mplayer_ctrl.pyo", line 93, in run > AttributeError: 'module' object has no attribute 'STARTF_USESHOWWINDOW' > > Anything changed between python versions to account for this?
Yes, apparently the code importing that stuff got removed: http://svn.python.org/view/python/tags/r27/Lib/subprocess.py?r1=79064&r2=82504 FWIW, STARTUPINFO(), STARTF_USESHOWWINDOW, and SW_HIDE were/are undocumented in both Python versions and thus shouldn't be relied upon. They can be accessed via Python's win32-specific modules instead (see diff). Cheers, Chris -- http://blog.rebertia.com -- http://mail.python.org/mailman/listinfo/python-list