Bonjour,

Je développe toujours mon programme socket et à la fermeture de windows ou de la session, donc il la détecte mais bloque, j'essaie de fermer mon application en envoyant un message que le serveur va se fermer :
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
void __fastcall TForm1::WndProc(Messages::TMessage &Message)
{
 if (Message.Msg == WM_QUERYENDSESSION &&
     SrvSocket->Active == true &&
     SrvSocket->Socket->ActiveConnections >= 1)
 {
  //Fermeture de la session !
  for (int i=0; i<SrvSocket->Socket->ActiveConnections; i++)
  {
   if(SrvSocket->Socket->Connections[i]->Connected)
   {
    // envoie à tous
    SrvSocket->Socket->Connections[i]->SendText("/endsession");
   }
  }
  //Ferme la connexion sans forcer
  SrvSocket->Active = false;
  TForm::WndProc(Message);
  Application->Terminate();
 }
 else
 {
 //Laisse passer le message
 TForm::WndProc(Message);
 }
}
Le problème qui se passe c'est que mon application ne se ferme pas et tant qu'elle est ouverte elle bloque la fermeture de windows !!!

Merci d'avance de me corriger.