Comment interrompre l'arret de windows

Comment interrompre l'arret de windows - C++ - Programmation

Marsh Posté le 24-07-2009 à 16:15:48    

Bonjour,
Quand on arrête windows sans avoir fermer un logiciel et sans avoir sauvegarder son travail , windows arrete de fermer tous les programmes et le logiciel demande " voulez vous enregistrer les modifications?"  
 
Je voudrais pouvoir faire la meme chose avec mon programme en C++,( j'utillise  visual c++2005/2008) avec codeblock , en fait je voudrai juste savoir comment faire pour interrompre l'arret de windows au moment ou windows essaye de fermer mon programme et que mon programme fasse ce que je veux à ce moment.  
 
merci


Message édité par dvechamb le 29-07-2009 à 17:46:55
Reply

Marsh Posté le 24-07-2009 à 16:15:48   

Reply

Marsh Posté le 24-07-2009 à 16:28:23    

je ne pense que les programmes arrête windows mais plutôt que windows attend la fermeture des programmes pour s'éteindre.
Donc quand un utilisateur ferme ton programme tu vérifies qu'il a bien sauvegarder ses documents. S'il ne l'a pas fait tu affichent une boite de dialogue modal lui demandant d'enregistrer ou d'annuler les modifications.


---------------
J'suis timide - Prêt à mourir, mais pas à vivre - Je suis vraiement très fatigué ... - more than meets the eye
Reply

Marsh Posté le 28-07-2009 à 15:24:58    

merci beaucoup

Reply

Marsh Posté le 29-07-2009 à 17:51:28    

merci mais si je fais juste ca, windows ferme mon programme quand je fais demarrer arreter et on ne voit pas ma boite qui dit voulez vous enregistrer les modif,
 
 il faut ajouter quelque chose pour que windows ne ferme pas le prog et fasse comme si l'utilisateur avait cliquer sur la croix.

Reply

Marsh Posté le 30-07-2009 à 10:41:17    

Tu processes bien le message WM_QUERYENDSESSION pour afficher ta boite de sauvegarde?
http://msdn.microsoft.com/en-us/li [...] S.85).aspx
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 02-08-2009 à 15:04:39    

thanks Gilou j'ai réussi mais maintenant j'aimerais savoir si l'utilisateur a fait démarrer, arrêter ou démarrer redémarrer.
 
Dans les deux cas je reçois les deux messages wm queryendsession et wm_endsession alors je sais pas.

Reply

Marsh Posté le 02-08-2009 à 19:32:48    

dvechamb a écrit :

thanks Gilou j'ai réussi mais maintenant j'aimerais savoir si l'utilisateur a fait démarrer, arrêter ou démarrer redémarrer.
 
Dans les deux cas je reçois les deux messages wm queryendsession et wm_endsession alors je sais pas.

On peut faire la distinction entre un logoff et un shutdown, mais il n'est pas possible de faire la distinction entre un shutdown et un restart, si j'en crois la doc microsoft:

Citation :

lParam: This parameter can be one or more of the following values. If this parameter is 0, the system is shutting down or restarting (it is not possible to determine which event is occurring).


A+,
 


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 03-08-2009 à 16:22:38    

>  mais il n'est pas possible de faire la distinction entre un shutdown et un restart, si j'en crois la doc microsoft:
 
Si on peut le faire par un hook classique.


Message édité par Stephen135 le 03-08-2009 à 16:23:20
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed