Hola Alvaro.<div><br></div><div>En realidad no pasaste el ejemplo que ejecutas, pero bueno, mira, subprocess funciona bien en la xo:</div><div><br></div><div>Descargate : <a href="http://activities.sugarlabs.org/es-ES/sugar/addon/4355">http://activities.sugarlabs.org/es-ES/sugar/addon/4355</a></div>
<div><br></div><div>Busca el archivo Mplayer_Reproductor, está hecho en base a subprocess.</div><div><br></div><div>En es código lo que hice fue establecer stdin y stdout para el proceso, de modo que corro mplayer dentro del subproceso, capturando sus devoluciones en stdout e interactuando con mplayer a través de stdin, es un ejemplo bien completito y algo complejo, pero una llamada sencilla a subprocess sería:</div>
<div><br></div><div><font color="#990000">subprocess.call(args, *, stdin=None, stdout=None, stderr=None, shell=False)</font></div><div><br></div><div>Y para matar el proceso:</div><div><br></div><div><font color="#990000">subprocess.kill()</font><br>
<br>Acá tienes la info del API: <a href="http://docs.python.org/library/subprocess.html?highlight=subprocess#subprocess">http://docs.python.org/library/subprocess.html?highlight=subprocess#subprocess</a></div><div>Cualquier duda me dices.</div>
<div><br></div><div><br><br><div class="gmail_quote">El 20 de marzo de 2012 15:27, Alvaro Arias <span dir="ltr"><<a href="mailto:aarias1978@gmail.com">aarias1978@gmail.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Buenas tardes.<br><br><br>Quiero hacerles llegar una duda que estoy teniendo, acontinuación les copio el código de un método que tengo desarrollado, es método es lanzado luego de hacer click en un boton de la interface gráfica lo que proboca lanzar la ejecución de otro componente del sistema que estoy desarrollando, esta lanzamiento lo realizo utilizando el comando subprocesess.Popen. La duda que me genera si este comando es soportado por las ceibalitas, esta incógnita me surge pues testeando desde el PC donde tengo el entorno de desarrollo el accionar es el correcto, pero cuando genero la activity y la ejecuto desde la ceibalita no tengo resultados prositivos, tampoco obtengo mensaje de error solamente queda sin actividad el botón. <br>
<br><br>def botonIniciar(self, widget):<br> # Descripción: Ejecuta el subproceso Motor<br> <br> if self.fondoElegido == True and self.personajeElegido == True and self.tipoDeFinal == True: <br> <br>
if self.esAceptableElTipoDeFinal() == True:<br> <br> self.escrituraXml.modificarNodosXY(self.documentoXML, self.dragAndDrop.arrayBotonesImgLienzo, self.numNivel)<br> self.escrituraXml.guardarXml(self.documentoXML, "Xml")<br>
<br> ruta = os.path.join (self.config.SUBIR_UN_NIVEL, self.config.SUBIR_UN_NIVEL, <br> self.config.DIR_MOTOR, "main.py")<br> <br> rutaAbsoluta = Utils.obtenerRuta(Utils, ruta)<br>
<br> numNivel = str (self.numNivel)<br> <br> <font size="4"><b style="color:rgb(255,0,0)"> subprocess.Popen([sys.executable, rutaAbsoluta, numNivel])</b></font><br>
# Popen se encarga de ejecutar comandos externos, en este caso un<br> # ejecutable (el juego creado)<br> else:<br> faltaElegir = self.controlDeArmadoDelJuego()<br> MsjError(self, "No es posible probar el juego ya que falta elegir: \n" + faltaElegir)<br>
<br>Espero puedan guiarme, muchas gracias.<br>saludos<span class="HOEnZb"><font color="#888888"><br clear="all"><br>-- <br><font size="4"><u><i><b><span style="color:rgb(51,0,153)">Alvaro</span><br></b></i></u></font><br>
</font></span><br>_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
<br></blockquote></div><br></div>