Partager via


STRUCTURE CHANGEFILTERSTRUCT (winuser.h)

Contient des informations de résultat étendues obtenues en appelant la fonction ChangeWindowMessageFilterEx .

Syntaxe

typedef struct tagCHANGEFILTERSTRUCT {
  DWORD cbSize;
  DWORD ExtStatus;
} CHANGEFILTERSTRUCT, *PCHANGEFILTERSTRUCT;

Membres

cbSize

Type : DWORD

Taille de la structure, en octets. Doit avoir la sizeof(CHANGEFILTERSTRUCT)valeur , sinon la fonction échoue avec ERROR_INVALID_PARAMETER.

ExtStatus

Type : DWORD

Si la fonction réussit, ce champ contient l’une des valeurs suivantes.

Valeur Signification
MSGFLTINFO_NONE
0
Consultez la section Notes. S’applique aux MSGFLT_ALLOW et MSGFLT_DISALLOW.
MSGFLTINFO_ALLOWED_HIGHER
3
Le message est autorisé dans une étendue supérieure à la fenêtre. S’applique à MSGFLT_DISALLOW.
MSGFLTINFO_ALREADYALLOWED_FORWND
1
Le message a déjà été autorisé par le filtre de messages de cette fenêtre, et la fonction a donc réussi sans modification du filtre de message de la fenêtre. S’applique à MSGFLT_ALLOW.
MSGFLTINFO_ALREADYDISALLOWED_FORWND
2
Le message a déjà été bloqué par le filtre de messages de cette fenêtre, et la fonction a donc réussi sans modifier le filtre de messages de la fenêtre. S’applique à MSGFLT_DISALLOW.

Remarques

Certains messages dont la valeur est inférieure à WM_USER doivent passer par le filtre, quel que soit le paramètre de filtre. Il n’y aura aucun effet lorsque vous tentez d’utiliser cette fonction pour autoriser ou bloquer ces messages.

Une application peut utiliser la fonction ChangeWindowMessageFilter pour autoriser ou bloquer un message à l’échelle du processus. Si le message est autorisé par le filtre de message de processus ou par le filtre de message de fenêtre, il est remis à la fenêtre.

Le tableau suivant répertorie les valeurs possibles retournées dans ExtStatus.

Message déjà autorisé dans une étendue supérieure Message déjà autorisé par le filtre de message de la fenêtre Opération demandée Indicateur retourné dans ExtStatus en cas de réussite
Non Non MSGFLT_ALLOW MSGFLTINFO_NONE
Non Non MSGFLT_DISALLOW MSGFLTINFO_ALREADYDISALLOWED_FORWND
Non Non MSGFLT_RESET MSGFLTINFO_NONE
Non Oui MSGFLT_ALLOW MSGFLTINFO_ALREADYALLOWED_FORWND
Non Oui MSGFLT_DISALLOW MSGFLTINFO_NONE
Non Oui MSGFLT_RESET MSGFLTINFO_NONE
Oui Non MSGFLT_ALLOW MSGFLTINFO_NONE
Oui Non MSGFLT_DISALLOW MSGFLTINFO_ALLOWED_HIGHER
Oui Non MSGFLT_RESET MSGFLTINFO_NONE
Oui Oui MSGFLT_ALLOW MSGFLTINFO_ALREADYALLOWED_FORWND
Oui Oui MSGFLT_DISALLOW MSGFLTINFO_ALLOWED_HIGHER
Oui Oui MSGFLT_RESET MSGFLTINFO_NONE

Spécifications

   
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête winuser.h (inclure Windows.h)

Voir aussi

ChangeWindowMessageFilterEx