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 :
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; } } }
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
Partager