2010-05-02 6 views
2

récemment this post m'a inspiré, je veux suivre ma propre vie, aussi. Je regarde l'horloge de mon téléphone à chaque fois que je me couche ou que je me réveille. J'ai donc besoin d'un programme pour brancher le bouton marche/arrêt de mon téléphone portable, et enregistrer l'horodatage quand j'appuie dessus. J'utilise WM6.5 sur un HTC TyTN II. S'il existe un logiciel qui peut le faire avec peu de réglages et de réglages, ce serait bien, mais je peux aussi écrire du code moi-même. Aucune suggestion?Hook Téléphone Windows Mobile 6.5 activé/désactivé bouton

Répondre

1

Vous pouvez utiliser les notifications de puissance du périphérique en appelant RequestPowerNotifications pour savoir quand un état d'alimentation change (il y a aussi a CodeProject article). Sachez que la notification de mise hors tension n'attend pas que les abonnés exécutent du code. Dans la plupart des cas, le gestionnaire de votre application ne s'exécute pas tant que le périphérique n'est pas réactivé (ce qui signifie que si vous écrivez un horodatage) aller chercher l'heure de réveil, pas le temps de sommeil).

Sachez également que different devices handle power management differently, donc YMMV.

1

C'est plus compliqué que vous ne pourriez l'imaginer! Le bouton 'on/off' n'est pas directement disponible sur le système d'exploitation (c'est-à-dire qu'il n'est pas visible dans le pilote du clavier), car il est relié à un système d'effondrement de puissance assez complexe (le éteint lorsque le téléphone est éteint - le modem se réveille en fonction du cycle de téléavertissement configuré par le réseau).

Les interactions veille-sommeil des deux processeurs sont extrêmement complexes et sujettes aux conditions de concurrence. Même si vous réussissiez à l'accrocher (ce qui nécessiterait une programmation profonde au niveau du noyau et un certain nombre de hacks de sécurité), vous rendriez probablement votre téléphone très instable.

+0

http://social.msdn.microsoft.com/Forums/en/windowsmobiledev/thread/e5e7d68f-ee9f-480a-98c9-907b1e6d9e29 est cette solution légitime? – est

+1

Je n'ai pas exécuté le code, mais il semble être légitime. Au lieu d'essayer d'accrocher directement la touche d'alimentation, il s'enregistre pour recevoir des notifications d'événements de changement d'état d'alimentation. MSDN possède la documentation des API d'alimentation exportées à l'adresse http://msdn.microsoft.com/en-us/library/aa917813%28v=MSDN.10%29.aspx. Vous êtes probablement intéressé par la notification de restauration PBT_RESTORE. –

Questions connexes