I haven't tested Your code, so can't tell You why it is working as You say. But
to open batch file in my script I use simple:
subprocess.Popen("c:\VerrLongPath\AnotherPath\mybatch.bat"").communicate()
You can also play with pipes for Popen...
Algirdas Brazas
----- Original Message -----
From: Marian Popa
To: python-list@python.org
Sent: Saturday, August 23, 2008 4:29 PM
Subject: Problems calling batch files (*.bat) from Python???
Hello,
I am new in Python programming and I have the following problem:
I have a script in which I need to open an application (called from a batch
file - "trace.bat"). For this purpuse, I'm executing the following piece of
code:
import os, win32process
from win32api import Sleep
os.chdir("D:\\Marian\\Proiecte\\AMT\\Trace")
os.startfile("launch_trace.bat")
#subprocess.call("D:\\Marian\\Proiecte\\AMT\\Trace\\trace.bat")
#pr = win32process.CreateProcess(None,
"D:\\Marian\\Proiecte\\AMT\\Trace\\trace.bat", None, None, 0,
win32process.NORMAL_PRIORITY_CLASS, None, None, win32process.STARTUPINFO())
....
....
....
....
But, when I call the "os.startfile("launch_trace.bat")" command, the program
prompter appears, but the program called in the batch file is opened ONLY after
the whole script has finished the execution.
Unfortunatley, after this line there are some very important things that has to
be executed in the right order. I mean, the execution of the batch file is
important for the rest of the code.
What is strange is that if I execute this code step-by-step, using the debugger,
or if I put a breakpoint on the "launch_trace" line and then I step on it,
everything is working fine - the Trace application is launced correctly.
Could anyone help in this direction? I need to launch the application and after
this I want to continue the execution of the script.
Thank you in advance!
P.S. I've also tried with processes (see the commented lines) and I get the same
problems; for MSWord application, the behavior is the same - it is launched
after the script ends. Also, I have to mention that I don't have a DLL of this
application and it is not a COM application in order to control it from Python.
Marian
--
http://mail.python.org/mailman/listinfo/python-list
--
http://mail.python.org/mailman/listinfo/python-list