Rodar aplicação externa. [RESOLVIDO]

9 respostas
lina

Oi,

Teria como eu rodar uma aplicação externa, do tipo winamp.exe no evento de um click no botão?

Tentei achar pela opção Busca, porém não estou conseguindo abri-la.

Tchauzin!

9 Respostas

FilhoDoRei

Faz assim:

String caminhoCompletoWinamp = "C:\\Arquivos de programas\\...\\winamp.exe";

btn.addActionListener(new ActionListener(){
     public void actionPerformed(ActionEvent e){
           try{ 
               Runtime.getRuntime().exec(caminhoCompletoWinamp); 
           } catch(Exception e){
               System.out.println(e.getMessage());
           }
     }
});

Espero ter ajudado, se não posta sua duvida.

Te mais!

Cabazzo

OU usar o JDesktop (só java 1.6):

import java.io.File;

import org.jdesktop.jdic.desktop.Desktop;

import org.jdesktop.jdic.desktop.DesktopException;
public class TestOpen {

public static void main(String[] args) {

try {

Desktop.open(new File(C:\Arquivos de Programas\Winamp\winamp.exe));

} catch (DesktopException e) {

e.printStackTrace();

}

}

}

Fonte: https://jdic.dev.java.net/documentation/Examples.html#Use%20package%20org.jdesktop.jdic.desktop

FilhoDoRei

Cabazzo:
OU usar o JDesktop (só java 1.6):

import java.io.File;

import org.jdesktop.jdic.desktop.Desktop;

import org.jdesktop.jdic.desktop.DesktopException;
public class TestOpen {

public static void main(String[] args) {

try {

Desktop.open(new File(C:\Arquivos de Programas\Winamp\winamp.exe));

} catch (DesktopException e) {

e.printStackTrace();

}

}

}

Fonte: https://jdic.dev.java.net/documentation/Examples.html#Use%20package%20org.jdesktop.jdic.desktop

cara sua dica esta meio incompleta, mas achei muito interresante por isso dei uma melhorada nela:

import java.awt.Desktop;
import java.io.File; 

public class TestOpen { 
    public static void main(String[] args) { 
        try { 
            Desktop.getDesktop().open(new File("C:\\Arquivos de Programas\\Winamp\\winamp.exe"));
        } catch (Exception e) { 
            e.printStackTrace(); 
        } 
    } 
}

Valeuussss

lina

Oi,

funcionou as 2 certinho!

Obrigada…

Tchauzin!

FilhoDoRei

Por nada!

lina

To nervosa…
Ta 1 x 1 Manchester x Chelsea

FilhoDoRei

Fica assim não daqui a pouco o Manchester vira o jogo!

hehehe

P

Sugeriria você colocar uma constante privada de classe aonde armazena o caminho do software. É coisinha simples mas faz a diferença. =)

B

Sugiro que você pegue esse caminho de uma variável do sistema, ou de arquivo de properties, se é pra ficar “constante”.

Criado 21 de maio de 2008
Ultima resposta 21 de mai. de 2008
Respostas 9
Participantes 5