salut

j'utilise ce code :

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
 
var
sTokenIn,sTokenOut : TTOKENPRIVILEGES ;
dwLen : DWORD ;
hCurrentProcess,hToken : THANDLE ;
Luid1 : TLargeInteger ;  // LUID ;
 
begin
 
  // Handle du process en cours
  hCurrentProcess := GetCurrentProcess ;
  OpenProcessToken (hCurrentProcess,TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken);
 
  // valeur du privilege SHUTDOWN
  LookupPrivilegeValue(nil,'SeShutdownPrivilege',Luid1) ;
  sTokenIn.PrivilegeCount := 1;
  sTokenIn.Privileges[0].Luid := Luid1;
  sTokenIn.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
 
  // Ajustement du privilege avec les nouvelles valeurs
  AdjustTokenPrivileges ( hToken, FALSE, sTokenIn,sizeof(TTOKENPRIVILEGES),sTokenOut, dwLen);
  CloseHandle (hToken);
  ExitWindowsEx(EWX_SHUTDOWN {or EWX_FORCE}, 0) ;//Sortie NT
 
end.
mais il y a un message qui dit "vous pouvez maintenant fermer votre unité central"

or je ne veux pas avoir de message, je veux que l'éteindre sans message ...