java et psexec - Win NT/2K/XP - Windows & Software
MarshPosté le 23-05-2009 à 23:28:45
je travaille sur une application java qui exécute un fichier .bat à distance grâce à la commande PsExec. Mon problème est le suivant : le processus Psexec se lance sur la machine distante mais se termine avec un code erreur 1 ( arret par l'utlisateur )sans aucune manipulation de ma part. Ca plante dans la boucle while quand il récupère les lignes dans sderr.
Marsh Posté le 23-05-2009 à 23:28:45
je travaille sur une application java qui exécute un fichier .bat à distance grâce à la commande PsExec.
Mon problème est le suivant :
le processus Psexec se lance sur la machine distante mais se termine avec un code erreur 1 ( arret par l'utlisateur )sans aucune manipulation de ma part.
Ca plante dans la boucle while quand il récupère les lignes dans sderr.
Voici mon code
*******************************************
public void ExecBat(){
String expr="";
String cmd= ("C:\\PsTools\\psexec.exe "+srv+" " );
String param= "192.168.0.0 "+adrIP+" "+adrMAC+" "+nom+" "+desc+" ";
if (user.isEmpty()){
expr = cmd+" "+path+" "+param+"";
}else{
expr = cmd+"-u "+user+" -p "+pwd+" "+path+" "+param+"";
}
try {
Runtime r =Runtime.getRuntime();
Process p = r.exec(expr);
InputStream is =p.getInputStream();
InputStream err = p.getErrorStream();
String line;
/*BufferedReader out= new BufferedReader(new InputStreamReader (is));*/
BufferedReader errder= new BufferedReader(new InputStreamReader (err));
while ((line = errder.readLine())!= null){
System.out.println(line);
}
p.waitFor();
errorlevel = p.exitValue();
p.getErrorStream().close();
p.getInputStream().close();
p.destroy();
}
catch (IOException e) {
JOptionPane.showMessageDialog(BootLRSView, e);
}
catch (InterruptedException f){
JOptionPane.showMessageDialog(BootLRSView, f);
}
}
*******************
sortie de PsExec
*******************
PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com
Connecting to srv-mpp-ad3...
Starting PsExec service on srv-mpp-ad3...
Connecting with PsExec service on srv-mpp-ad3...
Starting C:\test1.bat on srv-mpp-ad3...
C:\test1.bat exited on srv-mpp-ad3 with error code 1.
**************************************************
Merci d'avance à la personne qui arrivera à débloquer la situation
J'exécute l'application sous XP et le serveur est sous Windows Server 2003
Message édité par rootstell le 23-05-2009 à 23:31:45