Événement PBT_APMQUERYSUSPEND
PBT_APMQUERYSUSPEND peut être utilisé dans les systèmes d’exploitation spécifiés dans la section Configuration requise. La prise en charge de cet événement a été supprimée dans Windows Vista. Utilisez SetThreadExecutionState à la place.]
Demande l’autorisation de suspendre l’ordinateur. L’application qui accorde l’autorisation doit effectuer des préparations pour la suspension avant de retourner.
Une fenêtre reçoit cet événement via le message WM_POWERBROADCAST. Les paramètres wParam et lParam sont définis comme décrit ci-dessous.
LRESULT
CALLBACK
WindowProc( HWND hwnd, // handle to window
UINT uMsg, // WM_POWERBROADCAST
WPARAM wParam, // PBT_APMQUERYSUSPEND
LPARAM lParam); // action flags
Paramètres
hwnd
Handle à fenêtre.
uMsg
Valeur | Signification |
---|---|
|
Identificateur du message. |
wParam
Valeur | Signification |
---|---|
|
Identificateur de l’événement. |
lParam
Indicateurs d’action. Si le bit 0 est 1, l’application peut demander à l’utilisateur de donner des instructions sur la préparation de la suspension ; sinon, l’application doit se préparer sans interaction utilisateur. Toutes les autres valeurs du bit sont réservées.
Valeur retournée
Retourne TRUE pour accorder la demande de suspension. Pour refuser la demande, retourne BROADCAST_QUERY_DENY.
Notes
L’application doit traiter cet événement le plus rapidement possible. L’application peut demander à l’utilisateur de donner des instructions sur la façon de se préparer à la suspension uniquement si le bit 0 est défini dans le paramètre Flags. Toutefois, si ce message est émis parce que l’utilisateur ferme le couvercle de son ordinateur portable, il n’est pas possible de faire cette demande. Les applications doivent prendre en compte que l’utilisateur attend un certain comportement lorsqu’il ferme le couvercle de l’ordinateur portable ou appuie sur le bouton d’alimentation et doivent donc permettre que la transition réussisse.
Le système accorde environ 20 secondes aux applications pour supprimer le message WM_POWERBROADCAST qui envoie l’événement PBT_APMQUERYSUSPEND de leur file d’attente de messages. Si une application ne supprime pas le message de sa file d’attente en moins de 20 secondes, le système part du principe qu’elle est dans un état non réactif et qu’elle accepte la demande de veille. Les applications qui ne traitent pas leur file d’attente de messages peuvent voir leurs opérations interrompues. Une fois que l’application supprime le message de la file d’attente de messages, elle peut prendre autant de temps qu’il le faut pour effectuer les opérations requises avant d’entrer en état de veille. Toutes les opérations susceptibles de prendre plus de 20 secondes doivent être effectuées à ce moment-là, car le système accorde seulement 20 secondes pour effectuer les opérations pendant le traitement de PBT_APMSUSPEND.
Spécifications
Condition requise | Value |
---|---|
Client minimal pris en charge |
Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
Fin du support client |
Windows XP |
Fin de la prise en charge du serveur |
Windows Server 2003 |
En-tête |
|