---
name: "PeekMessageW"
section: "3w"
platform: "linux"
package: "wine-doc"
version: "0.0.981018-1.1"
release: "Debian 2.1 (Slink)"
platforms: ["linux"]
url: "https://new.carta.tech/PeekMessageW"
---

# PeekMessageW(3w)

PeekMessageW Check queue for messages

## NAME

PeekMessageW - PeekMessageW             Check queue for messages

## SYNOPSIS

**BOOL32 PeekMessageW**\
 **(**\
\
 	**LPMSG32 lpmsg,**\
\
 	**HWND32 hwnd,**\
\
 	**UINT32 min,**\
\
 	**UINT32 max,**\
\
 	**UINT32 wRemoveMsg**\
 **);**

## PARAMETERS

- **LPMSG32 lpmsg**

  Buffer to receive message.

- **HWND32 hwnd**

  Restrict to messages for hwnd.

- **UINT32 min**

  Minimum message to receive.

- **UINT32 max**

  Maximum message to receive.

- **UINT32 wRemoveMsg**

  Removal flags.

## DESCRIPTION

Checks for a message in the thread's queue, filtered as for GetMessage(). Returns immediately whether a message is available or not.

Whether a retrieved message is removed from the queue is set by the \_wRemoveMsg\_ flags, which should be one of the following values:

PM\_NOREMOVE    Do not remove the message from the queue.

PM\_REMOVE      Remove the message from the queue.

In addition, PM\_NOYIELD may be combined into \_wRemoveMsg\_ to request that the system not yield control during PeekMessage(); however applications may not rely on scheduling behavior.

## RETURNS

Nonzero if a message is available and is retrieved, zero otherwise.

## CONFORMANCE

ECMA-234, Win32.

## SEE ALSO

[SetDoubleClickTime(3w)](/SetDoubleClickTime/3w.md), [GetDoubleClickTime(3w)](/GetDoubleClickTime/3w.md), [PeekMessageA(3w)](/PeekMessageA/3w.md), [GetMessageA(3w)](/GetMessageA/3w.md), [GetMessageW(3w)](/GetMessageW/3w.md), [PostMessageA(3w)](/PostMessageA/3w.md), [PostMessageW(3w)](/PostMessageW/3w.md), [PostThreadMessageA(3w)](/PostThreadMessageA/3w.md), [SendMessageA(3w)](/SendMessageA/3w.md), [SendMessageW(3w)](/SendMessageW/3w.md), [SendMessageTimeoutA(3w)](/SendMessageTimeoutA/3w.md), [SendMessageTimeoutW(3w)](/SendMessageTimeoutW/3w.md), [WaitMessage(3w)](/WaitMessage/3w.md), [MsgWaitForMultipleObjects(3w)](/MsgWaitForMultipleObjects/3w.md), [TranslateMessage(3w)](/TranslateMessage/3w.md), [DispatchMessageA(3w)](/DispatchMessageA/3w.md), [DispatchMessageW(3w)](/DispatchMessageW/3w.md), [RegisterWindowMessageA(3w)](/RegisterWindowMessageA/3w.md), [RegisterWindowMessageW(3w)](/RegisterWindowMessageW/3w.md), [GetTickCount(3w)](/GetTickCount/3w.md), [InSendMessage(3w)](/InSendMessage/3w.md), [BroadcastSystemMessage(3w)](/BroadcastSystemMessage/3w.md), [SendNotifyMessageA(3w)](/SendNotifyMessageA/3w.md), [SendMessageCallbackA(3w)](/SendMessageCallbackA/3w.md)
