Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/05/2011, 03:13
adri_ark1
 
Fecha de Ingreso: mayo-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Al ejecutar un batch desde Flash, al cabo de unos segundos sale "Error opening URL"

Mi aplicación cliente funciona perfectamente, el problema que tengo es el siguiente:

- Se trata de una aplicación cliente/servidor que implementa un juego de cartas, de modo que para que el juego se lleve a cabo, necesito ejecutar un batch (programa de lotes ejecutable) en el servidor, el cual me aceptará los sockets del cliente 1 y 2 respectivamente. Sin la ejecución de este batch, es imposible la comunicación por sockets.

- Para ello, desde uno de los clientes (SÓLO uno), ejecuto el script "ejecutarBatch.php" y seguidamente, los dos clientes pasan al fotograma principal, con el escenario del juego (y es allí donde se crea la comunicación socket).

- El problema llega ahora,(dentro del fotograma escenario) al cabo de unos segundos (10 segundos más o menos) me aparece el siguiente mensaje:

Error opening URL "http://localhost/tute/ejecutarBatch.php"

.. y sinceramente, no entiendo porque me sale este error, porque la aplicación me funciona perfectamente y el script del batch lo ejecuta perfectamente (sino la conexión socket no podría llevarse a cabo).

De este modo, quisiera saber si habría alguna manera de no mostrar este mensaje, o en caso contrario, localizar donde y cuál es el problema.

A continuación pego la función que utilizo para determinar si es el cliente 1 o el 2, y para la ejecución del batch. Finalmente saltará al fotograma escenario (fotograma principal para el juego, donde se crean los sockets):

function conectadoCliente2(){
var login_lv:LoadVars = new LoadVars();
var result_lv:LoadVars = new LoadVars();

login_lv.username = usuario_lbl.text;
trace(login_lv.username);

login_lv.sendAndLoad("http://localhost/tute/espera.php", result_lv, "POST");

result_lv.onLoad = function(success:Boolean) {
if (success) {
trace(this.opcion);
switch(this.opcion){

//Si no hay ningun usuario conectado..
case "0":
//PONER CODIGO
gotoAndPlay("escenaEspera1");
break;

case "1": //CLIENTE2
trace("SOY EL CLIENTE2; ME VOY A ESCENARIO");
gotoAndPlay("escenario"); //me voi a la escena que establece conexion socket
break;

case "2": //CLIENTE1, ARRANCO SOCKETRUN.BAT
var batch_lv:LoadVars = new LoadVars();
login_lv.sendAndLoad("http://localhost/tute/ejecutarBatch.php", batch_lv, "POST");
trace("SOY EL CLIENTE1; ME VOY A ESCENARIO");
gotoAndPlay("escenario"); //me voi a la escena que establece conexion socket
break;

}

}
};
}