Question

Quel est le moyen le plus simple d'appeler un programme avec un morceau de code Java? (Le programme que je veux exécuter est aiSee et peut être exécuté à partir de la ligne de commande ou de l'interface graphique Windows; et je suis sur Vista, mais le code sera également exécuté sur des systèmes Linux.)

Était-ce utile?

La solution

Consultez le Processus et classes d'exécution . N'oubliez pas que ce que vous essayez d'accomplir n'est probablement pas indépendant de la plate-forme.

Voici un petit morceau de code qui pourrait être utile:

public class YourClass
{
    public static void main(String args[])
       throws Exception
    {
        Runtime rt = Runtime.getRuntime();
        Process proc = rt.exec("name_of_your_application.exe");
        int exitVal = proc.exitValue();
        System.out.println("Process exitValue: " + exitVal);
    }
}

Une question dans S.O. discuter de questions similaires. une autre . Et un autre.

Autres conseils

Vous pouvez obtenir une instance d'exécution à l'aide de Runtime.getRuntime() et appeler la méthode exec de l'exécution, avec la commande permettant d'exécuter le programme en tant qu'argument.

Par exemple:

Runtime runTime = Runtime.getRuntime ();       
Process proc = rt.exec("iSee.exe");

Vous pouvez également capturer la sortie du programme en récupérant InputStream à partir du processus.

La difficulté que vous rencontrerez est de savoir comment faire en sorte que l’application connaisse le chemin. Vous voudrez peut-être utiliser un fichier xml ou config, mais si vous utilisez ce lien, il devrait vous expliquer comment exécuter un fichier: http://www.javacoffeebreak.com/faq/faq0030.html

Vous pouvez également envisager de passer un argument à votre programme afin de faciliter la recherche du programme spécifique que vous souhaitez exécuter.

Cela peut être avec des arguments de ligne de commande, des fichiers de propriétés ou des propriétés système.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top