L'application ne se ferme pas

Résolu
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
- 29 mai 2004 à 10:11
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
- 31 mai 2004 à 12:09
Bonjour à tous.

Voila je vous expose mon problème.
J'ai développé une appli qui peut se résuit en system tray.

Cependant, si on souhaite fermer windows, et que cet appli est encore ouverte, le processus de fermeture s'arrete. Windows ferme bien plusieurs applications encore ouvertes, mais arrivé a la mienne, il stoppe.

Quelqu'un a deja eu ce souci ? Vous savez comment résoudre ça ?

J'ai pas beaucoup d'indices à donner... Le prog utilise des timers, il est en system tray... sinon, rien de spécial.

Merci de votre aide !

Mx

9 réponses

cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
98
29 mai 2004 à 11:37
tu n'aurais pas fait une annulation de fermeture dans le closing ?
enfin normalement si l'appli ne se ferme pas quand win le demande y'a une fin de processus qui deboule derrière mais c'est un peu moins elegant ^^

Cocoricoooooooo !!!!
3
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
31 mai 2004 à 11:57
j'avais trouvé ce bout de code :

public const int SC_CLOSE = 0xF060;
public const int WM_SYSCOMMAND = 0x0112;
private bool _closeClick; 

protected override void WndProc(ref System.Windows.Forms.Message m)
{if(m.Msg WM_SYSCOMMAND && (int)m.WParam SC_CLOSE)
this._closeClick = true;
base.WndProc(ref m);
}


ainsi, dans mon form_closing, je peux determiner si _closeClick est a true, ce qui impliquerait que l'utilisateur a cliqué sur la croix ( et qu'il faut mettre l'appli en tray), sinon, c'est que c'est windows...

Par contre, j'aurais bien aimé trouver une page de référence qui recense tout ces type de messages. Mais j'ai pas trouvé. (enfin, j'ai rapidement cherché. il doit bien y avoir ca sur msdn, non ?)
3
crack_xp
Messages postés
91
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
25 janvier 2007

29 mai 2004 à 12:23
Il faudra voir le code de ton form, si tu veux plus d'aide.
A+

NO TIME TO WASTE
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
31 mai 2004 à 10:08
En fait oui, je pense que c'est a cause du fait que je catch l'evenement closing pour passer l'application dans le system tray. J'avais pas pensé que ca foirerait la fermeture. En tout cas, windows s'arrete net de fermer, il tente meme pas par la fermeture de processus .

Bon bah je vais essayer de contourner ca.

Merci à vous !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
98
31 mai 2004 à 10:17
via les api tu dois pouvoir determiner si windows est en train de se fermer
ça te permettrais de garder ta mise en tray dans ton closing
et d'annuler la fermeture seulement si elle n'est pas demandée par win

Cocoricoooooooo !!!!
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
31 mai 2004 à 10:26
Voui, la j'essayais de voir si via le parametre sender, je pouvais savoir si c'etait windows qui fermait ou non, mais finalement le sender semble etre toujours le meme.

Je vais chercher alors, comme tu dis, par les apis.
J'espere trouver facilement un exemple, parce que là ca va etre "ma première fois" ^^
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
31 mai 2004 à 11:01
Voila, ca marche impeccable
Merci beaucoup coq ! :)
0
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
98
31 mai 2004 à 11:30
juste par curiosité tu es passé par quoi pour determiner si win etait en cours de fermeture ?

Cocoricoooooooo !!!!
0
cs_coq
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
2 août 2014
98
31 mai 2004 à 12:09
normalement oui, dans la section PlatForm SDK

Cocoricoooooooo !!!!
0