Ver Mensaje Individual
  #1  
Antiguo 25-03-2011
MaxiDucoli MaxiDucoli is offline
Miembro
 
Registrado: feb 2006
Posts: 134
Reputación: 21
MaxiDucoli Va por buen camino
Angry Ayuda con ejecucion de linea de comandos

Hola, como están? .
Los molesto por que tengo un problema desde hace 3 días y no puedo solucionarlo con nada.

Les cuento:
Estoy haciendo un programa que es un FrontEnd entre una aplicacion de linea de comandos llamada POPSTATION.EXE ( es un programa que te transforma las ISOS de PlayStation en ISOS para jugarlas desde la PSP) y la cargo en un TJvCreateProcess.

En este programa ejecuto muchos bat, por que no solo hace eso, sino que tambien usa otros programitas desde linea de comandos (popstrip.exe, que descomprime isos de psp ya comprimidos con popstation.exe, Ciso.exe que transforma las ISO en CSO y daxcr.exe que transforma los ISO en dax, fffmpeg para cargar sonido y transformarlo en wav) pero mi problema esta en el popstation.exe y es el siguiente:

Hago un TStringList y le cargo los datos ahi

que son estos:
Código Delphi [-]
  Lst := TStringList; // Declaro la lista
  Lst := TStringList.Create; // Creo la lista
  cmd := '"' + ExtractFilePath(ParamStr(0)) + 'PSX\popstation.exe" ' + '"' + Trim(EdtGameTitle.Text)  + '" ' + 
         Trim(EdtIDGame.Text) + ' 9 ' + '"' + Trim(EdtInFile.Text) + '"'; // Inserto los valores en una variable string
  Lst.Add(Trim(cmd)); // Agrego el String a la lista
  Lst.Add('Move /Y "' + ExtractFilePath(ParamStr(0))+ 'PSX\EBOOT.PBP" "' + ExtractFilePath(EdtInFile.Text)+ '"'); // Agrego otro String a la lista, que me mueve el archivo generado a la carpeta en donde lo necesito
  Lst.SaveToFile(ExtractFilePath(ParamStr(0)) + 'PSX\mke.bat'); // Salvo en bat
  Lst.Free; // Libero la lista

Después de todo esto, ejecuto el bat cargando el TJvCreatePRocess asi:

Código Delphi [-]
  Form1.Proceso.ApplicationName := ExtractFilePath(ParamStr(0)) + 'PSX\mke.bat';
  Form1.Proceso.Run;

Pero no anda.
Lo raro es que si ejecuto el Bat mediante doble click, ANDA PERFECTOOOOOO!!!!

Me estoy volviendo locooooooo!!

Probe cargando separadamente el ejecutable con las instrucciones y tampoco

Ya probe con todas las funciones y procedimientos que encontre por internet de ejecutar lineas de comandos y nada....

Alguien me puede ayudar???

Se imaginan por que el BAT no es roconocido por mi aplicación ponga la función o procedimiento que le ponga?

Solo se abre la ventanita de DOS y se cierra como si hubiese puesto mal los comandos, pero al abrir el bat y probar con doble click anda lo mas bien.

Esto es lo que tiene el bat adentro.
Cita:
"D:\_Datos Importantes_\Mis Proyectos Delphi\PSPTool\PSX\popstation.exe" "Tomb Raider Chronicles" SLES03336 9 "D:\Temp\Tomb Raider Chronicles\Tomb RAider Chronicles.iso"
Move /Y "D:\_Datos Importantes_\Mis Proyectos Delphi\PSPTool\PSX\EBOOT.PBP" "D:\Temp\Tomb Raider Chronicles\"
Asi es tal cual como esta el BAT.
Si alguien me puede ayudar se lo agradeceré muchísimo.
Saludos!

Última edición por ecfisa fecha: 25-03-2011 a las 05:00:06. Razón: ETIQUETAS DELPHI
Responder Con Cita