subprocess.Popen spawning cmd shells

Discussion in 'Python' started by Mrown, Jan 9, 2008.

  1. Mrown

    Mrown Guest

    Hi,
    I'm currently writing a python program that relies on a CLI
    program. What I'm currently doing is using subprocess.Popen on Python
    2.5.1. Here's the line that I'm currently running:

    child = subprocess.Popen(["c:\app.exe", node, "-w",
    str(tmpTime * 1000), '-n', str(1), '-l'], stdin=subprocess.PIPE,
    stdout=subprocess.PIPE, stderr=subprocess.PIPE)

    The problem is that although the above works, a CMD shell is spawned
    and becomes visible for each time I run the above. I thought that by
    redircting stdin, stdout and stderr, no CMD shell should pop-up. Is
    something wrong in the way I'm using subprocess? Thanks for your help.
     
    Mrown, Jan 9, 2008
    #1
    1. Advertising

  2. Mrown

    Mrown Guest

    On Jan 9, 5:17 pm, Mrown <> wrote:
    > Hi,
    >   I'm currently writing a python program that relies on a CLI
    > program.  What I'm currently doing is using subprocess.Popen on Python
    > 2.5.1.  Here's the line that I'm currently running:
    >
    >             child = subprocess.Popen(["c:\app.exe", node, "-w",
    > str(tmpTime * 1000), '-n', str(1), '-l'], stdin=subprocess.PIPE,
    > stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    >
    > The problem is that although the above works, a CMD shell is spawned
    > and becomes visible for each time I run the above.  I thought that by
    > redircting stdin, stdout and stderr, no CMD shell should pop-up.  Is
    > something wrong in the way I'm using subprocess?  Thanks for your help.


    To anyone interested, I found the solution by using the
    CREATE_NO_WINDOW creation flag. So this is what the code now looks
    like (and it doesn't spawn any shells):

    CREATE_NO_WINDOW = 0x8000000
    child = subprocess.Popen(["c:\app.exe", node, "-w",
    str(tmpTime * 1000), '-n', str(1), '-l'], stdin=subprocess.PIPE,
    stdout=subprocess.PIPE, stderr=subprocess.PIPE, creationflags =
    CREATE_NO_WINDOW)
     
    Mrown, Jan 9, 2008
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. WolfgangZ

    subprocess.Popen(cmd) question

    WolfgangZ, Aug 10, 2007, in forum: Python
    Replies:
    1
    Views:
    413
    Peter Otten
    Aug 10, 2007
  2. bhunter
    Replies:
    14
    Views:
    561
    bhunter
    Nov 27, 2007
  3. Replies:
    0
    Views:
    1,928
  4. D
    Replies:
    3
    Views:
    1,356
    Gabriel Genellina
    Oct 18, 2009
  5. Ross Boylan

    question about subprocess and shells

    Ross Boylan, Dec 4, 2009, in forum: Python
    Replies:
    3
    Views:
    333
    Nobody
    Dec 5, 2009
Loading...

Share This Page