Java ! Aidez moi

selim1806 -  
KX Messages postés 19031 Statut Modérateur -
Alors voici mon soucis: j'essaie d'exécuter une application extérieure, avec la fonction exec(). Donc ça donne ça.


l'application exemple.exe s'ouvre, jusque là tout va bien !

Ensuite là où ça se corse c'est que j'essaie d'executer la commande CTRL + O qui correspond à fichier -> ouvrir dans l'application exemple.exe.

La seconde difficulté est alors d'entrer dans l'explorer le nom du document (automatiquement), et ensuite de cliquer sur OUVRIR (automatiquement).

Je vous avoue que j'ai des doutes sur le faisabilité d'une telle chose...
A voir également:

1 réponse

KX Messages postés 19031 Statut Modérateur 3 020
 
Ce n'est pas totalement infaisable, mais ça risque d'être un peu bancal.

Tu devrais regarder la classe Robot, ça te permettra de simuler des appuis sur les touches pour faire ton Ctrl+O, ou rentrer le nom du document dont tu as besoin.

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_O);
robot.waitForIdle();
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_O);
robot.waitForIdle();

Remarque : la commande exec() n'est peut-être pas la plus adapté dans ce cas particulier, elle est intéressante lorsque tu as besoin d'intéragir avec les flux d'entrée/sortie de l'application, ou passer des paramètres. Mais ici la classe Desktop permettra peut-être de simplifier les choses.

Desktop desktop = Desktop.getDesktop();
desktop.open("exemple.exe");
0