Bonjour,
J'ai besoin d'un petit renseignement.
J'ai lancé un fichier bat en java grâce à la commande :
Runtime.getRuntime().exec(new String[] {"cmd.exe", "/c start lanceur.bat"});
Ce fichier BAT contient des lignes qui permettent, entre autre, de créer des variables d'environnement (syntaxe "SET nom_variable = ..."). Après la mise en place de ces variables, j'ai mis une commande de lancement d'une application. Cette application fait appel aux variables d'environnement que j'ai précédement mises en place.
Le lancement de ce batch via "Démarrer -> Exécuter -> cmd" fonctionne très bien et l'application s'exécute correctement sans aucun message d'erreur.
Lorsque j'exécute le batch dans le programme JAVA via la commande que j'ai écrit ci-dessus, tout marche très bien également.
J'ai donc décidé de créer un installeur de mon programme JAVA avec Inno setup. J'installe ensuite ce programme sur 2 postes (dont le mien sur lequel j'ai développé mon application) avec mon installeur. J'exécute donc l'application Java que je viens d'installer et qui lance le ".BAT". Tout marche correctement et l'application qu'est censée lancer le ".BAT" se lance bien ...SAUF que elle me renvoie une erreur me disant qu'un DLL est manquante.
Or, le chemin de la DLL est écrite dans le .bat (le même ".bat" qui marche très bien sans Inno setup quand je le lance depuis JAVA ou depuis la fenêtre "Démarrer -> Exécuter -> cmd"). Cette DLL est sur le réseau de l'entreprise.
La question que je me pose est donc : pourquoi tout marche bien sans passer par inno setup et pourquoi ca ne marche dès que ca vient de l'application installé par inno setup?
Du fait que ce soit installé par Inno setup, est-ce exécuté dans un environnement particulier?
Détails importants :
1) Dans le programme JAVA, je fais afficher la fenêtre DOS dans laquelle s'exécute le ".BAT". Je peux donc voir que, quand je lance la JAVA installé par Inno setup, le contenu de cette fenêtre est le même que dans la fenêtre "Démarrer -> Exécuter -> cmd" dans laquelle j'ai exécuté le ".bat".
2) Les autres fonctionnalité du programme JAVA fonctionne très bien.
Pouvez-vous m'éclairer un peu SVP?
Partager