python system subprocess win32
mclaugb
mclaugb at nospm.yahoo.com
Tue Aug 7 12:07:12 EDT 2007
At the moment, I cannot figure a way of running this precompiled "conv.exe"
using commandline arguments.
Thus, I need Python to call the program, wait until it loads up, then enter
a known sequence of characters so that the function will run.
The program conv.exe I call looks like this.
--------------------------
Welcome to conv.exe
This program was written by ....
Please select from the following options: h- (help) r- (read) ...etc
Enter your request:
---------------------------------
I need Python to start the program, wait a second and then issue a few
characters to the program.
Hope this makes more sense!
Bryan
<kyosohma at gmail.com> wrote in message
news:1186500091.063514.178640 at e9g2000prf.googlegroups.com...
> On Aug 7, 9:48 am, "mclaugb" <mcla... at nospm.yahoo.com> wrote:
>> Hello ALl,
>> I have a compiled program "conv.exe" that works as follows:>>conv.exe
>>
>> -----------------------------
>> Please selection from the following options. press "h" for help, "p" for
>> print, "r" for readfile.
>> Enter your request now:
>> ...
>> --------------------
>> Is there a way to script python using the subprocess method to start this
>> program "conv.exe" and then send a "r" to the command line to make it,
>> say,
>> readfile.
>>
>> I have tried the following but the .communicate("r) is not doing anything
>>
>> import subprocess
>> import time
>>
>> a=subprocess.Popen("c:\\mcml\\conv.exe")
>> time.sleep(1)
>> (stdout, stderr) = a.communicate("r")
>>
>> Many thanks,
>> Bryan
>
> Use the sys.argv method. In the code that you have compiled, put the
> following lines in:
>
> <code>
>
> import sys
> default = sys.argv[1]
> if default:
> # check which option it is and run it appropriately
> else:
> # print your menu here
>
> </code>
>
> Then you should be able to do the subprocess Popen command:
>
> subprocess.Popen("c:\\mcml\\conv.exe r")
>
> You may need to turn the shell on...
>
> subprocess.Popen("c:\\mcml\\conv.exe r", shell=True)
>
> Hopefully that gives you some ideas anyway.
>
> Mike
>
More information about the Python-list
mailing list