>I have a problem with the module subprocess! >The problem is that the external software that I am running under >subprocess.Popen opens stdin, stdout, stderr, and other file descriptors to >write and read in the hard drive.
As many other programs... >I know how to capture stdin, stdout and stderr, what I cannot do is to capture >the other file-descriptors. Is there any way to wrap those non-standard file >descriptors and make them write and read from a specific object that I define? >I know that I can use tmp files to do that, but i would like something running >without tmp files. I'm not sure what you mean by "non-standard file descriptors". The other program is free to open, read, write, etc any file he wants - are you trying to trap any file operation it may want to do? You *could* do such things -google for "code injection" and "API hooking"- but I doubt it's what you really want. -- Gabriel Genellina Softlab SRL Hi Gabriel! When I wrote "non-standard file descriptors", I meant the file descriptior which are pointed to files in the hardrive. What I would like to do is not to trap any file operation, but instead intercept that file operation, i.e. I would like the output of the external program to don't be writen in a file (its normal behavior), but instead be sent to any variable in my program. I know the name of the file where the external program will write the output. I pass its name along the command line. Joao Figueiras ___________________________________________________________________ O SAPO já está livre de vírus com a Panda Software, fique você também! Clique em: http://antivirus.sapo.pt -- http://mail.python.org/mailman/listinfo/python-list