Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] ejecutar exe

Estas en el tema de ejecutar exe en el foro de Java en Foros del Web. buen dia. espero que alguien me pueda ayudar, el problema es que tengo que ejecutar un exe con paramentos "C:\Archivos de programa\censo\bin\win32.exe" C:\PR\prsh -RO -p ...
  #1 (permalink)  
Antiguo 24/04/2014, 17:56
 
Fecha de Ingreso: noviembre-2010
Ubicación: en las nubes
Mensajes: 56
Antigüedad: 14 años
Puntos: 3
Exclamación ejecutar exe

buen dia.

espero que alguien me pueda ayudar, el problema es que tengo que ejecutar un exe con paramentos "C:\Archivos de programa\censo\bin\win32.exe" C:\PR\prsh -RO -p C:\socpr\s3.w -param ADMIN,O,05111170213

lo ejecuto con
Código Java:
Ver original
  1. String[] cmd = {"C:\\Archivos de programa\\censo\\bin\\win32.exe C:\\PR\\prsh -RO -p C:\\pr\\s3.w -param ADMIN,O,05111170213"} ;
  2. Process p = Runtime.getRuntime().exec(cmd);
  3. p.waitFor();

y marca el error java.lang.IllegalArgumentException: Executable name has embedded quote, split the arguments

si lo ejecuto con el código siguiente se ejecuta pero los parametros no los toma en cuenta

Código Java:
Ver original
  1. String[] cmd = {"C:\\Archivos de programa\\censo\\bin\\win32.exe"," C:\\PR\\prsh -RO -p C:\\pr\\s3.w -param ADMIN,O,05111170213"} ;
  2.         Process p = Runtime.getRuntime().exec(cmd);
  3.         p.waitFor();

alguna idea para este problema , gracias
  #2 (permalink)  
Antiguo 25/04/2014, 15:28
 
Fecha de Ingreso: noviembre-2010
Ubicación: en las nubes
Mensajes: 56
Antigüedad: 14 años
Puntos: 3
Respuesta: ejecutar exe

para los que estan interesados en la solucion aqui se las dejo.

Código Java:
Ver original
  1. try {
  2.             File f = new File("C:\\Archivos de programa\\censo\\bin\\");
  3.             String para=String.format("%s,%s,%s,%s,%s",BD.getUsuario(),BD.getPassword(),"ADMIN","O",num, ""));
  4.             ProcessBuilder pb = new ProcessBuilder("cmd", "/c","start","/D","C:\\PR","win32.exe","C:\\PR\\prsh","-RO","-p","C:\\SOCPR\\s3.w","-param",para);
  5.             pb.directory(f);
  6.             Process process = pb.start();
  7.             process.waitFor();
  8.         } catch (IOException e) {
  9.             e.printStackTrace();
  10.         } catch (InterruptedException e) {
  11.             e.printStackTrace();
  12.         }

suerte para los que lo necesiten.
__________________
la mejor soluciones no es la mas complicada, si no con la mejor ingenio

Etiquetas: cmd, exe
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:09.