Función GetQueueStatus (winuser.h)

Recupera el tipo de mensajes encontrados en la cola de mensajes del subproceso que llama.

Sintaxis

DWORD GetQueueStatus(
  [in] UINT flags
);

Parámetros

[in] flags

Tipo: UINT

Tipos de mensajes para los que se va a comprobar. Este parámetro puede ser uno o más de los siguientes valores.

Valor Significado
QS_KEY
0x0001
Un mensaje de WM_KEYUP, WM_KEYDOWN, WM_SYSKEYUP o WM_SYSKEYDOWN está en la cola.
QS_MOUSEMOVE
0x0002
Un mensaje de WM_MOUSEMOVE está en la cola.
QS_MOUSEBUTTON
0x0004
Mensaje de botón del mouse (WM_LBUTTONUP, WM_RBUTTONDOWN, etc.).
QS_POSTMESSAGE
0x0008
Un mensaje publicado (distinto de los enumerados aquí) está en la cola. Para obtener más información, vea PostMessage.
Este valor se borra cuando se llama a GetMessage o PeekMessage, tanto si se filtran mensajes como si no.
QS_TIMER
0x0010
Un mensaje de WM_TIMER está en la cola.
QS_PAINT
0x0020
Un mensaje de WM_PAINT está en la cola.
QS_SENDMESSAGE
0x0040
Un mensaje enviado por otro subproceso o aplicación está en la cola. Para obtener más información, vea SendMessage.
QS_HOTKEY
0x0080
Un mensaje de WM_HOTKEY está en la cola.
QS_ALLPOSTMESSAGE
0x0100
Un mensaje publicado (distinto de los enumerados aquí) está en la cola. Para obtener más información, vea PostMessage.
Este valor se borra cuando se llama a GetMessage o PeekMessage sin filtrar mensajes.
QS_RAWINPUT
0x0400
Windows XP y versiones más recientes: un mensaje de entrada sin procesar está en la cola. Para obtener más información, consulte Entrada sin procesar.
QS_TOUCH
0x0800
Windows 8 y versiones más recientes: un mensaje de entrada táctil está en la cola. Para obtener más información, consulte Entrada táctil.
QS_POINTER
0x1000
Windows 8 y versiones más recientes: un mensaje de entrada de puntero está en la cola. Para obtener más información, vea Entrada de puntero.
QS_MOUSE
(QS_MOUSEMOVE | QS_MOUSEBUTTON)
Mensaje WM_MOUSEMOVE o mensaje de botón del mouse (WM_LBUTTONUP, WM_RBUTTONDOWN, etc.).
QS_INPUT
(QS_MOUSE | QS_KEY | QS_RAWINPUT | QS_TOUCH | QS_POINTER)
Un mensaje de entrada está en la cola.
QS_ALLEVENTS
(QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY)
Hay una entrada, WM_TIMER, WM_PAINT, WM_HOTKEY o mensaje publicado en la cola.
QS_ALLINPUT
(QS_INPUT | QS_POSTMESSAGE | QS_TIMER | QS_PAINT | QS_HOTKEY | QS_SENDMESSAGE)
Cualquier mensaje está en la cola.

Valor devuelto

Tipo: DWORD

La palabra de orden superior del valor devuelto indica los tipos de mensajes que se encuentran actualmente en la cola. La palabra de orden bajo indica los tipos de mensajes que se han agregado a la cola y que todavía están en la cola desde la última llamada a la función GetQueueStatus, GetMessage o PeekMessage .

Comentarios

La presencia de una marca de QS_ en el valor devuelto no garantiza que una llamada posterior a la función GetMessage o PeekMessage devuelva un mensaje. GetMessage y PeekMessage realizan algún filtrado interno que puede hacer que el mensaje se procese internamente. Por este motivo, el valor devuelto de GetQueueStatus debe considerarse solo una sugerencia sobre si se debe llamar a GetMessage o PeekMessage .

Las marcas QS_ALLPOSTMESSAGE y QS_POSTMESSAGE difieren en cuando se borran. QS_POSTMESSAGE se borra al llamar a GetMessage o PeekMessage, independientemente de si está filtrando o no los mensajes. QS_ALLPOSTMESSAGE se borra cuando se llama a GetMessage o PeekMessage sin filtrar mensajes (wMsgFilterMin y wMsgFilterMax son 0). Esto puede ser útil cuando se llama a PeekMessage varias veces para obtener mensajes en distintos intervalos.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-message-l1-1-0 (introducido en Windows 8)

Consulte también

Conceptual

GetInputState

GetMessage

Mensajes y colas de mensajes

PeekMessage

Referencia