Mensajes y colas de mensajes
En esta sección se describen los mensajes y las colas de mensajes y cómo usarlos en las aplicaciones.
En esta sección
Nombre | Descripción |
---|---|
Acerca de mensajes y colas de mensajes | En esta sección se describen los mensajes de Windows y las colas de mensajes. |
usar mensajes y colas de mensajes | En los ejemplos de código siguientes se muestra cómo realizar las siguientes tareas asociadas a mensajes de Windows y colas de mensajes. |
de referencia de mensajes de | Contiene la referencia de API. |
mensajes de System-Provided
Para obtener listas de los mensajes proporcionados por el sistema, consulte System-Defined Mensajes.
Funciones de mensaje
Nombre | Descripción |
---|---|
broadcastSystemMessage | Envía un mensaje a los destinatarios especificados. Los destinatarios pueden ser aplicaciones, controladores instalables, controladores de red, controladores de dispositivo de nivel de sistema o cualquier combinación de estos componentes del sistema. Para recibir información adicional si se define la solicitud, use la función BroadcastSystemMessageEx. |
broadcastSystemMessageEx | Envía un mensaje a los destinatarios especificados. Los destinatarios pueden ser aplicaciones, controladores instalables, controladores de red, controladores de dispositivo de nivel de sistema o cualquier combinación de estos componentes del sistema. Esta función es similar a broadcastSystemMessage excepto que esta función puede devolver más información de los destinatarios. |
dispatchMessage de | Envía un mensaje a un procedimiento de ventana. Normalmente se usa para enviar un mensaje recuperado por la función GetMessage. |
GetInputState | Determina si hay mensajes de botón del mouse o de teclado en la cola de mensajes del subproceso de llamada. |
GetMessage | Recupera un mensaje de la cola de mensajes del subproceso de llamada. La función envía mensajes enviados entrantes hasta que haya un mensaje publicado disponible para su recuperación. A diferencia de GetMessage, la función PeekMessage no espera a que se publique un mensaje antes de devolverlo. |
GetMessageExtraInfo | Recupera la información adicional del mensaje para el subproceso actual. La información adicional del mensaje es un valor definido por la aplicación o el controlador asociado a la cola de mensajes del subproceso actual. |
GetMessagePos | Recupera la posición del cursor del último mensaje recuperado por la función GetMessage. Para determinar la posición actual del cursor, use la función GetCursorPos. |
GetMessageTime | Recupera la hora del mensaje para el último mensaje recuperado por la funciónGetMessage. El tiempo es un entero largo que especifica el tiempo transcurrido, en milisegundos, desde el momento en que se inició el sistema hasta la hora en que se creó el mensaje (es decir, colocado en la cola de mensajes del subproceso). |
GetQueueStatus | Indica el tipo de mensajes encontrados en la cola de mensajes del subproceso de llamada. |
InSendMessage | Determina si el procedimiento de ventana actual está procesando un mensaje que se envió desde otro subproceso (en el mismo proceso o en otro proceso) mediante una llamada a la funciónSendMessage. Para obtener información adicional sobre cómo se envió el mensaje, use la función InSendMessageEx. |
inSendMessageEx | Determina si el procedimiento de ventana actual está procesando un mensaje que se envió desde otro subproceso (en el mismo proceso o en otro). |
PeekMessage | Envía mensajes enviados entrantes, comprueba la cola de mensajes de subproceso de un mensaje publicado y recupera el mensaje (si existe). |
PostMessage | Publica un mensaje en la cola de mensajes asociado al subproceso que creó la ventana especificada y devuelve sin esperar a que el subproceso procese el mensaje. Para publicar un mensaje en la cola de mensajes asociada a un subproceso, use la funciónPostThreadMessage. |
PostQuitMessage | Indica al sistema que un subproceso ha realizado una solicitud para finalizar (salir). Normalmente se usa en respuesta a un mensaje de WM_DESTROY. |
PostThreadMessage | Envía un mensaje a la cola de mensajes del subproceso especificado. Devuelve sin esperar a que el subproceso procese el mensaje. |
registerWindowMessage | Define un nuevo mensaje de ventana que se garantiza que sea único en todo el sistema. El valor del mensaje se puede usar al enviar o publicar mensajes. |
ReplyMessage | Responde a un mensaje enviado a través de la funciónsendMessagesin devolver el control a la función que llamó a SendMessage. |
SendAsyncProc | Función de devolución de llamada definida por la aplicación que se usa con la función SendMessageCallback. El sistema pasa el mensaje a la función de devolución de llamada después de pasar el mensaje al procedimiento de la ventana de destino. El tipo SENDASYNCPROC define un puntero a esta función de devolución de llamada.
SendAsyncProc es un marcador de posición para el nombre de función definido por la aplicación. |
SendMessage de | Envía el mensaje especificado a una ventana o ventana. La función SendMessage llama al procedimiento de ventana para la ventana especificada y no devuelve hasta que el procedimiento de ventana haya procesado el mensaje. Para enviar un mensaje y devolver inmediatamente, use la función sendMessageCallback o SendNotifyMessage. Para publicar un mensaje en la cola de mensajes de un subproceso y devolverlo inmediatamente, use la función PostMessage o PostThreadMessage. |
SendMessageCallback | Envía el mensaje especificado a una ventana o ventana. Llama al procedimiento de ventana para la ventana especificada y devuelve inmediatamente. Una vez que el procedimiento de ventana procesa el mensaje, el sistema llama a la función de devolución de llamada especificada, pasando el resultado del procesamiento de mensajes y un valor definido por la aplicación a la función de devolución de llamada. |
SendMessageTimeout | Envía el mensaje especificado a una de las ventanas más. |
SendNotifyMessage | Envía el mensaje especificado a una ventana o ventana. Si el subproceso de llamada creó la ventana, SendNotifyMessage llama al procedimiento de ventana de la ventana y no devuelve hasta que el procedimiento de ventana haya procesado el mensaje. Si la ventana se creó mediante un subproceso diferente, SendNotifyMessage pasa el mensaje al procedimiento de ventana y devuelve inmediatamente; no espera a que el procedimiento de ventana termine de procesar el mensaje. |
SetMessageExtraInfo | Establece la información adicional del mensaje para el subproceso actual. La información adicional del mensaje es un valor definido por la aplicación o el controlador asociado a la cola de mensajes del subproceso actual. Una aplicación puede usar la función GetMessageExtraInfo para recuperar la información adicional del mensaje de un subproceso. |
TranslateMessage | Convierte los mensajes de clave virtual en mensajes de caracteres. Los mensajes de caracteres se publican en la cola de mensajes del subproceso de llamada para leer la próxima vez que el subproceso llame a la función GetMessage o PeekMessage. |
WaitMessage | Produce el control en otros subprocesos cuando un subproceso no tiene ningún otro mensaje en su cola de mensajes. La función waitMessage suspende el subproceso y no devuelve hasta que se coloca un nuevo mensaje en la cola de mensajes del subproceso. |
Constantes de mensaje
Nombre | Descripción |
---|---|
OCM__BASE | Se usa para definir mensajes privados para su uso por clases de ventana privada. |
WM_APP | Se usa para definir mensajes privados. |
WM_USER | Se usa para definir mensajes privados para su uso por clases de ventana privada. |
Estructuras de mensajes
Nombre | Descripción |
---|---|
BSMINFO | Contiene información sobre una ventana que denegó una solicitud de BroadcastSystemMessageEx. |
msg | Contiene información de mensajes de la cola de mensajes de un subproceso. |