style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

¿Como ejecutar un programa externo desde java?

Hola he intentado ejecutar un programa externo desde java, por ejemplo, abrir una navegador de internet con una pagina de internet como parametro. Lo he conseguido pero solo en mi computadora. Dando el Path completo del navegador y aun lado la direccion como parametro.
Pero como hacer que funcione en los demás PC's?

he intentado esto:

Runtime rt = Runtime.getRuntime();
            String ruta="%PROGRAMFILES%\\Internet Explorer\\iexplore.exe";
            Process proc = rt.exec("cmd -c "+ruta);

he incluso como:
cmd.exe + ruta
start + ruta

y nada.. alguien sabe como hacer esto?
Gracias de antemano

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de rodrigo salado anaya

No pongas 'cmd'...

No pongas 'cmd'. Pon la ruta del *.exe y los parámetros que necesitas.
Todas la PC derivan de tener una referencia en la variable de entorno 'path' para que puedas abrirlo sin problemas y no tener que poner la ruta completa.

http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Runtime.html

public static void main(String[] args) throws IOException {
       Runtime.getRuntime().exec("C:/Program Files/Mozilla Firefox 4.0 Beta 4/firefox.exe javamexico.org");
}
Imagen de skuarch

Otra opcion

si desea abrir el navegador puedes usar esto

String url = "http://www.google.com";
java.awt.Desktop.getDesktop().browse(java.net.URI.create(url));

tambien puedes usar esta opcion

URLDisplayer.getDefault().showURL(URL url);

¿Qué no es

¿Qué no es  getDesktop().open() ?

Bueno, la diferencia entre tu código y el de Rodrigo es que el de él [Rodrigo] ejecuta un proceso y el tuyo busca una tarea conocida por el escritorio. En el caso de tu código no recuerdo si puedes ver mensajes enviados por la tarea que lanza el escritorio, en el código de Rodrigo si puedes ver mensajes y demás que hace el proceso (mejor monitorización).

Muchas gracias

Muchas gracias, no conocia para nada la clase Desktop, gracias :D

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">