By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,223 Members | 1,392 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,223 IT Pros & Developers. It's quick & easy.

subprocess.Popen on Windows

P: n/a
playing with subprocess.Popen on Windows I stumbled into the following
problem:
Python 2.4.3 (#69, Mar 29 2006, 17:35:34)

IDLE 1.1.3
import subprocess
p1=subprocess.Popen("c:\\asd.bat") #works OK
p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)
Traceback (most recent call last):
File "<pyshell#2>", line 1, in -toplevel-
p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)
File "C:\Python24\lib\subprocess.py", line 533, in __init__
(p2cread, p2cwrite,
File "C:\Python24\lib\subprocess.py", line 593, in _get_handles
p2cread = self._make_inheritable(p2cread)
File "C:\Python24\lib\subprocess.py", line 634, in _make_inheritable
DUPLICATE_SAME_ACCESS)
TypeError: an integer is required

What do I do wrongly?

Jun 23 '06 #1
Share this Question
Share on Google+
3 Replies


P: n/a
"madpython" <ma*******@gmail.com> wrote in message
news:11**********************@g10g2000cwb.googlegr oups.com...
playing with subprocess.Popen on Windows I stumbled into the following
problem:
Python 2.4.3 (#69, Mar 29 2006, 17:35:34)

IDLE 1.1.3
import subprocess
p1=subprocess.Popen("c:\\asd.bat") #works OK
p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)
Traceback (most recent call last):
File "<pyshell#2>", line 1, in -toplevel-
p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)
File "C:\Python24\lib\subprocess.py", line 533, in __init__
(p2cread, p2cwrite,
File "C:\Python24\lib\subprocess.py", line 593, in _get_handles
p2cread = self._make_inheritable(p2cread)
File "C:\Python24\lib\subprocess.py", line 634, in _make_inheritable
DUPLICATE_SAME_ACCESS)
TypeError: an integer is required

What do I do wrongly?

I get the same thing. This only happens when using IDLE. From a command
prompt, everthing works as expected. Hopefully somebody else will know why.
Louis
Jun 23 '06 #2

P: n/a
On 23.06.2006 23:12:02, "3c273" wrote:
"madpython" <ma*******@gmail.com> wrote in message
news:11**********************@g10g2000cwb.googleg roups.com...
playing with subprocess.Popen on Windows I stumbled into the following
problem:
Python 2.4.3 (#69, Mar 29 2006, 17:35:34)

IDLE 1.1.3
>>> import subprocess
>>> p1=subprocess.Popen("c:\\asd.bat") #works OK
>>> p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)


Traceback (most recent call last):
File "<pyshell#2>", line 1, in -toplevel-
p2=subprocess.Popen("c:\\asd.bat",stdout=subproces s.PIPE)
File "C:\Python24\lib\subprocess.py", line 533, in __init__
(p2cread, p2cwrite,
File "C:\Python24\lib\subprocess.py", line 593, in _get_handles
p2cread = self._make_inheritable(p2cread)
File "C:\Python24\lib\subprocess.py", line 634, in _make_inheritable
DUPLICATE_SAME_ACCESS)
TypeError: an integer is required
>>>

What do I do wrongly?

I get the same thing. This only happens when using IDLE. From a command
prompt, everthing works as expected. Hopefully somebody else will know why.
Louis


I think IDLE replaces the sys.stdin and sys.stdout by a class to redirect IO.
So when using IDLE stdin and stdout are not integer handles anymore.

Greetings, Mathias
Jun 24 '06 #3

P: n/a
Hi,

Been there - try looking at:
http://groups.google.com/group/comp....9feabbfc940b01

Cheers,
Uri

Jun 25 '06 #4

This discussion thread is closed

Replies have been disabled for this discussion.