Lancer un exécutable sous un nom d'utilisateur
Bonjour,
Je débute en JAVA et voici mon souci :
Je suis en environnement Windows Server 2000 avec BD Oracle et mon pb était de pouvoir lancer un éxécutable depuis une procédure stockée JAVA. J'ai résolu ce pb en incorporant à ma BD Oracle une classe JAVA permettant de lancer une application externe à l'aide du code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
public static int RunThis(String[] args)
{
Runtime rt = Runtime.getRuntime();
int rc = -1;
try
{
Process p = rt.exec(args[0]);
int bufSize = 4096;
BufferedInputStream bis =
new BufferedInputStream(p.getInputStream(), bufSize);
int len;
byte buffer[] = new byte[bufSize];
// Echo back what the program spit out
while ((len = bis.read(buffer, 0, bufSize)) != -1)
System.out.write(buffer, 0, len);
rc = p.waitFor();
}
catch (Exception e)
{
e.printStackTrace();
rc = -1;
}
finally
{
return rc;
}
}
} |
Jusque là pas de souci sauf que le processus lancé est lancé en tant qu'utilisateur SYSTEM ce qui pourrait poser problème dans notre environnement.
Je voudrai donc savoir s'il est possible en JAVA de lancer une application externe sous un certain nom d'utilisateur (en l'occurence administrateur dans mon cas) et si oui comment ?
Merci