Voici ce que je cherche à faire:
J'ai un programme "ProgrammeMaître" qui en lance un autre "ProgrammeLancé" (sur lequel je n'ai pas de modification de possible).
J'aimerais que ProgrammeLancé ne s'arrête qu'à la fermeture de ProgrammeMaître ou par son interface normale, mais pas par une demande de fermeture de session. Donc je pense que la solution est de passer par un processus fils.
Et je n'arrive pas à faire appartenir le processus de ProgrammeLancé à celui de ProgrammeMaître (le but est de lancer un jar).
Auriez-vous une solution?
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 Var StartInfo : TStartupInfo; ProcessInfo : TProcessInformation; SecurityInfo : TSecurityAttributes; begin { Mise à zéro de la structure StartInfo } FillChar(StartInfo,SizeOf(StartInfo),#0); { Seule la taille est renseignée, toutes les autres options } { laissées à zéro prendront les valeurs par défaut } StartInfo.cb := SizeOf(StartInfo); StartInfo.dwFlags := STARTF_USESHOWWINDOW; StartInfo.wShowWindow := SW_HIDE; SecurityInfo.nLength := SizeOf(SecurityInfo); SecurityInfo.lpSecurityDescriptor := nil; SecurityInfo.bInheritHandle := True; { Lancement de la ligne de commande } If CreateProcess(nil, '"java.exe" "-jar" "monJar.jar", @SecurityInfo, @SecurityInfo, True, 0, Nil, 'MonPath', StartInfo,ProcessInfo)
Merci
Partager