Lanzar procesos desde interfaz Tkinter

Julio Canto jcanto en hispasec.com
Vie Jul 11 12:46:46 CEST 2003


A ver, lo que yo haria en windows... Me instalaria el win32all, y haria algo asi:

Aplicacion = loquesea que vayas a ejecutar (p.e. c:\\util\\solomillo.exe)

import win32process
si = win32process.STARTUPINFO()
info = win32process.CreateProcess(None,Aplicacion,None,None,0,None,None,None,si)
handle = info[0]

...con ese handle puedes comprobar luego si esta activo o no con:

win32process.GetExitCodeProcess(handle)

...y puedes darle matarile con:

win32process.TerminateProcess(handle,0)

Luego puedes meterle flags al createprocess para que se ejecute en una VDM separada, o que no saque echo, y operaciones similares.

Un saludo
    JC
  ----- Original Message ----- 
  From: Gema Núñez Blázquez 
  To: Python-es en aditel.org 
  Sent: Friday, July 11, 2003 12:00 PM
  Subject: [Python-es] Lanzar procesos desde interfaz Tkinter


  Tengo que hacer un proceso en Python que tiene interfaz gráfica y me ha surgido un problema Explico en que consiste el proceso:

  Hay un bat que tiene una serie de comandos pero Jaime quiere que ese proceso sea más vistoso y vaya saliendo en una interfaz los pasos que va haciendo, por ejemplo 

  Paso 1: ....

  Paso2: ....

  Bien, hasta ahi porque creo la interfaz y voy lanzando los distintos procesos con la orden os.spanwn(os.P_WAIT,...) de Python puesto que hasta que no finalize ese proceso no puedo continuar con el siguiente. 

  Mi problema es que la ventana de la interfaz se queda bloqueada y hasta que no retorna del proceso que he lanzado no me deja interactuar con ella (no se refesca y se queda en negro como si lanzase el proceso en modal). La pregunta es: ¿lo estoy enfocando bien?¿Hay alguna forma para que aun estando ejecutando el proceso de DOS lanzado yo pueda retornar a mi ventana de python y pueda ver lo que hay escrito hasta el momento en ella?

  He probado con os.system(..) y tampoco, habia pensado en usar P_NOWAIT y espera a que finalice con os.waitpid o wait pero esas funciones solo valen en Unix y esto corre en Windows.

  Ante todo gracias por la ayuda.

  Un saludo



------------------------------------------------------------------------------
  Yahoo! Messenger
  Nueva versión: Super Webcam, voz, caritas animadas, y más ¡Gratis!


------------------------------------------------------------------------------


  _______________________________________________
  Python-es mailing list
  Python-es en aditel.org
  http://listas.aditel.org/listinfo/python-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20030711/8c2eaf45/attachment.html>
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es