winuser.h (CHANGEFILTERSTRUCT 結構)
包含呼叫 ChangeWindowMessageFilterEx 函式所取得的擴充結果資訊。
語法
typedef struct tagCHANGEFILTERSTRUCT {
DWORD cbSize;
DWORD ExtStatus;
} CHANGEFILTERSTRUCT, *PCHANGEFILTERSTRUCT;
成員
cbSize
類型: DWORD
結構的大小,以位元組為單位。
必須設定為 sizeof(CHANGEFILTERSTRUCT)
,否則函式會因為 ERROR_INVALID_PARAMETER而失敗。
ExtStatus
類型: DWORD
如果函式成功,此欄位會包含下列其中一個值。
備註
不論篩選設定為何,其值小於 WM_USER 的特定訊息都必須通過篩選準則。 當您嘗試使用此函式來允許或封鎖這類訊息時,將不會有任何作用。
應用程式可以使用 ChangeWindowMessageFilter 函 式,以全進程的方式允許或封鎖訊息。 如果進程訊息篩選或視窗訊息篩選準則允許訊息,則會將訊息傳遞至視窗。
下表列出 ExtStatus中傳回的可能值。
已在較高範圍允許的訊息 | 視窗的訊息篩選已允許訊息 | 要求的作業 | 成功時在 ExtStatus 中傳回的指標 |
---|---|---|---|
否 | 否 | MSGFLT_ALLOW | MSGFLTINFO_NONE |
否 | 否 | MSGFLT_DISALLOW | MSGFLTINFO_ALREADYDISALLOWED_FORWND |
否 | 否 | MSGFLT_RESET | MSGFLTINFO_NONE |
否 | 是 | MSGFLT_ALLOW | MSGFLTINFO_ALREADYALLOWED_FORWND |
否 | 是 | MSGFLT_DISALLOW | MSGFLTINFO_NONE |
否 | 是 | MSGFLT_RESET | MSGFLTINFO_NONE |
是 | 否 | MSGFLT_ALLOW | MSGFLTINFO_NONE |
是 | 否 | MSGFLT_DISALLOW | MSGFLTINFO_ALLOWED_HIGHER |
是 | 否 | MSGFLT_RESET | MSGFLTINFO_NONE |
是 | 是 | MSGFLT_ALLOW | MSGFLTINFO_ALREADYALLOWED_FORWND |
是 | 是 | MSGFLT_DISALLOW | MSGFLTINFO_ALLOWED_HIGHER |
是 | 是 | MSGFLT_RESET | MSGFLTINFO_NONE |
規格需求
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限桌面應用程式] |
標頭 | winuser.h (包含 Windows.h) |