Comment puis-je déterminer pourquoi la machine est sorti de suspendre?
-
18-09-2019 - |
Question
Je voudrais être en mesure de déterminer, par programmation, pourquoi un système Vista est sorti de veille (S3). Toute langue est très bien, mais un .NET serait préférable. Je cherche à mettre ce code dans une application que je travaille.
Je cherche des raisons comme « centre des médias a voulu enregistrer un programme », « entrée utilisateur se réveilla la machine », « windows update est planifiée, » des choses comme ça. J'ai cherché sur Google, Bing et MSDN, mais je ne pouvais trouver des choses pertinentes à Windows Mobile.
Quelqu'un peut-il me pointer vers une fonction ou un objet qui peut fournir ces informations?
La solution
Une fenêtre de niveau supérieur obtient un WM_POWERBROADCAST un message au réveil, mais vous ne pouvez dire si elle était automatique (centre des médias, mettre à jour les fenêtres, etc.) ou l'utilisateur (en appuyant sur le bouton d'alimentation, etc.)