WM_USER
The WM_USER
constant is used by applications to help define private messages.
WM_USER
Remarks
The WM_USER
constant is used to distinguish between message values that are reserved for
use by Windows and values that can be used by an application to send messages
within a private window class. There are five ranges of message numbers:
Range |
Meaning |
0 through
WM_USER - 1 |
Messages
reserved for use by Windows. |
WM_USER
through 0x7FFF |
Integer
messages for use by private window classes. |
0x8000
through 0xBFFF |
Messages
reserved for future use by Windows. |
0xC000
through 0xFFFF |
String
messages for use by applications. |
Greater
than 0xFFFF |
Reserved by
Windows for future use. |
Message
numbers in the first range (0 through WM_USER - 1) are defined by Windows. Values in this range that
are not explicitly defined are reserved for future use by Windows.
Message
numbers in the second range (WM_USER through 0x7FFF) can be defined and used by
an application to send messages within a private window class. These values
cannot be used to define messages that are meaningful throughout an
application, because some predefined window classes already define values in
this range. For example, predefined control classes such as BUTTON, EDIT,
LISTBOX, and COMBOBOX may use these values. Messages in this range should not
be sent to other applications unless the applications have been designed to
exchange messages and to attach the same meaning to the message numbers.
Message
numbers in the third range (0x8000 through 0xBFFF) are reserved for future use
by Windows.
Message
numbers in the fourth range (0xC000 through 0xFFFF) are defined at run time
when an application calls the RegisterWindowMessage function to retrieve
a message number for a string. All applications that register the same string
can use the associated message number for exchanging messages. The actual message
number, however, is not a constant and cannot be assumed to be the same between
different Windows sessions.
Message
numbers in the fifth range (greater than 0xFFFF) are reserved for future use by
Windows.
See Also