Dans une IHM sous Windows, on doit configuer un boitier externe. Cette configuration se fait par l'intermédiaire d'un Shell (.bat) fourni par le constructeur du boitier en question.
Lorsque je lance le shell en ligne de commande (cmd), tout ce passe bien. En java, je le lance via runtime.exec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
 Runtime runtime = Runtime.getRuntime();
 process = runtime.exec("\"C:\\Program Files\\...Loader.bat\"  ...
J'obtiens le message suivant :
Socket Notification Sink
L'instruction à "xxx" emploie l'adresse mémoire "yyy". La mémoire ne peut pas être "read".

Comme cela fonctionne quand je lance le shell à la mimine, je pense que le problème vient soit de l'environnement utilisé par le runtime.exec soit par des contraintes de sécurité que Java utiliserait lors du lancement d'un exe (n° de socket interdit...)
Quelqu'un a-t-il une idée du problème où de l'endroit où je peux trouver des infos ?