Edit

Share via


Windows and Messages

Overview of the Windows and Messages technology.

The Windows and Messages technology is not associated with any headers.

For programming guidance for this technology, see:

Functions

 
AdjustWindowRect

Calculates the required size of the window rectangle, based on the desired client-rectangle size. The window rectangle can then be passed to the CreateWindow function to create a window whose client area is the desired size.
AdjustWindowRectEx

Calculates the required size of the window rectangle, based on the desired size of the client rectangle. The window rectangle can then be passed to the CreateWindowEx function to create a window whose client area is the desired size.
AllowSetForegroundWindow

Enables the specified process to set the foreground window using the SetForegroundWindow function. The calling process must already be able to set the foreground window. For more information, see Remarks later in this topic.
AnimateWindow

Enables you to produce special effects when showing or hiding windows. There are four types of animation:_roll, slide, collapse or expand, and alpha-blended fade.
AnyPopup

Indicates whether an owned, visible, top-level pop-up, or overlapped window exists on the screen. The function searches the entire screen, not just the calling application's client area.
ArrangeIconicWindows

Arranges all the minimized (iconic) child windows of the specified parent window.
BeginDeferWindowPos

Allocates memory for a multiple-window- position structure and returns the handle to the structure.
BringWindowToTop

Brings the specified window to the top of the Z order. If the window is a top-level window, it is activated. If the window is a child window, the top-level parent window associated with the child window is activated.
BroadcastSystemMessage

The BroadcastSystemMessage function sends a message to the specified recipients. (BroadcastSystemMessage)
BroadcastSystemMessageA

Sends a message to the specified recipients. (BroadcastSystemMessageA)
BroadcastSystemMessageExA

Sends a message to the specified recipients. (BroadcastSystemMessageExA)
BroadcastSystemMessageExW

Sends a message to the specified recipients. (BroadcastSystemMessageExW)
BroadcastSystemMessageW

The BroadcastSystemMessageW (Unicode) function sends a message to the specified recipients. (BroadcastSystemMessageW)
CalculatePopupWindowPosition

Calculates an appropriate pop-up window position using the specified anchor point, pop-up window size, flags, and the optional exclude rectangle.
CallMsgFilterA

Passes the specified message and hook code to the hook procedures associated with the WH_SYSMSGFILTER and WH_MSGFILTER hooks. (ANSI)
CallMsgFilterW

Passes the specified message and hook code to the hook procedures associated with the WH_SYSMSGFILTER and WH_MSGFILTER hooks. (Unicode)
CallNextHookEx

Passes the hook information to the next hook procedure in the current hook chain. A hook procedure can call this function either before or after processing the hook information.
CallWindowProcA

Passes message information to the specified window procedure. (ANSI)
CallWindowProcW

Passes message information to the specified window procedure. (Unicode)
CascadeWindows

Cascades the specified child windows of the specified parent window.
ChangeWindowMessageFilter

Adds or removes a message from the User Interface Privilege Isolation (UIPI) message filter.
ChangeWindowMessageFilterEx

Modifies the User Interface Privilege Isolation (UIPI) message filter for a specified window.
ChildWindowFromPoint

Determines which, if any, of the child windows belonging to a parent window contains the specified point. The search is restricted to immediate child windows. Grandchildren, and deeper descendant windows are not searched.
ChildWindowFromPointEx

Determines which, if any, of the child windows belonging to the specified parent window contains the specified point.
CloseWindow

Minimizes (but does not destroy) the specified window.
CreateMDIWindowA

Creates a multiple-document interface (MDI) child window. (ANSI)
CreateMDIWindowW

Creates a multiple-document interface (MDI) child window. (Unicode)
CreateWindowA

Creates an overlapped, pop-up, or child window. (ANSI)
CreateWindowExA

Creates an overlapped, pop-up, or child window with an extended window style; otherwise, this function is identical to the CreateWindow function. (ANSI)
CreateWindowExW

Creates an overlapped, pop-up, or child window with an extended window style; otherwise, this function is identical to the CreateWindow function. (Unicode)
CreateWindowW

Creates an overlapped, pop-up, or child window. (Unicode)
DeferWindowPos

Updates the specified multiple-window � position structure for the specified window.
DefFrameProcA

Provides default processing for any window messages that the window procedure of a multiple-document interface (MDI) frame window does not process. (ANSI)
DefFrameProcW

Provides default processing for any window messages that the window procedure of a multiple-document interface (MDI) frame window does not process. (Unicode)
DefMDIChildProcA

Provides default processing for any window message that the window procedure of a multiple-document interface (MDI) child window does not process. (ANSI)
DefMDIChildProcW

Provides default processing for any window message that the window procedure of a multiple-document interface (MDI) child window does not process. (Unicode)
DefWindowProcA

Calls the default window procedure to provide default processing for any window messages that an application does not process. (ANSI)
DefWindowProcW

Calls the default window procedure to provide default processing for any window messages that an application does not process. (Unicode)
DeregisterShellHookWindow

Unregisters a specified Shell window that is registered to receive Shell hook messages.
DestroyWindow

Destroys the specified window.
DispatchMessage

The DispatchMessage function dispatches a message to a window procedure. It is typically used to dispatch a message retrieved by the GetMessage function.
DispatchMessageA

Dispatches a message to a window procedure. It is typically used to dispatch a message retrieved by the GetMessage function. (DispatchMessageA)
DispatchMessageW

The DispatchMessageW (Unicode) function dispatches a message to a window procedure. It is typically used to dispatch a message retrieved by the GetMessage function.
EndDeferWindowPos

Simultaneously updates the position and size of one or more windows in a single screen-refreshing cycle.
EndTask

Forcibly closes the specified window.
EnumChildWindows

Enumerates the child windows that belong to the specified parent window by passing the handle to each child window, in turn, to an application-defined callback function.
EnumPropsA

Enumerates all entries in the property list of a window by passing them, one by one, to the specified callback function. EnumProps continues until the last entry is enumerated or the callback function returns FALSE. (ANSI)
EnumPropsExA

Enumerates all entries in the property list of a window by passing them, one by one, to the specified callback function. EnumPropsEx continues until the last entry is enumerated or the callback function returns FALSE. (ANSI)
EnumPropsExW

Enumerates all entries in the property list of a window by passing them, one by one, to the specified callback function. EnumPropsEx continues until the last entry is enumerated or the callback function returns FALSE. (Unicode)
EnumPropsW

Enumerates all entries in the property list of a window by passing them, one by one, to the specified callback function. EnumProps continues until the last entry is enumerated or the callback function returns FALSE. (Unicode)
EnumThreadWindows

Enumerates all nonchild windows associated with a thread by passing the handle to each window, in turn, to an application-defined callback function.
EnumWindows

Enumerates all top-level windows on the screen by passing the handle to each window, in turn, to an application-defined callback function. EnumWindows continues until the last top-level window is enumerated or the callback function returns FALSE.
FindWindowA

Retrieves a handle to the top-level window whose class name and window name match the specified strings. This function does not search child windows. This function does not perform a case-sensitive search. (ANSI)
FindWindowExA

Retrieves a handle to a window whose class name and window name match the specified strings. The function searches child windows, beginning with the one following the specified child window. This function does not perform a case-sensitive search. (ANSI)
FindWindowExW

Retrieves a handle to a window whose class name and window name match the specified strings. The function searches child windows, beginning with the one following the specified child window. This function does not perform a case-sensitive search. (Unicode)
FindWindowW

Retrieves a handle to the top-level window whose class name and window name match the specified strings. This function does not search child windows. This function does not perform a case-sensitive search. (Unicode)
GET_X_LPARAM

Retrieves the signed x-coordinate from the specified LPARAM value.
GET_Y_LPARAM

Retrieves the signed y-coordinate from the given LPARAM value.
GetAltTabInfoA

Retrieves status information for the specified window if it is the application-switching (ALT+TAB) window. (ANSI)
GetAltTabInfoW

Retrieves status information for the specified window if it is the application-switching (ALT+TAB) window. (Unicode)
GetAncestor

Retrieves the handle to the ancestor of the specified window.
GetClassInfoA

Retrieves information about a window class. (ANSI)
GetClassInfoExA

Retrieves information about a window class, including a handle to the small icon associated with the window class. The GetClassInfo function does not retrieve a handle to the small icon. (ANSI)
GetClassInfoExW

Retrieves information about a window class, including a handle to the small icon associated with the window class. The GetClassInfo function does not retrieve a handle to the small icon. (Unicode)
GetClassInfoW

Retrieves information about a window class. (Unicode)
GetClassLongA

Retrieves the specified 32-bit (DWORD) value from the WNDCLASSEX structure associated with the specified window. (ANSI)
GetClassLongPtrA

Retrieves the specified value from the WNDCLASSEX structure associated with the specified window. (ANSI)
GetClassLongPtrW

Retrieves the specified value from the WNDCLASSEX structure associated with the specified window. (Unicode)
GetClassLongW

Retrieves the specified 32-bit (DWORD) value from the WNDCLASSEX structure associated with the specified window. (Unicode)
GetClassName

The GetClassName function retrieves the name of the class to which the specified window belongs. (GetClassName)
GetClassNameA

Retrieves the name of the class to which the specified window belongs. (GetClassNameA)
GetClassNameW

The GetClassNameW (Unicode) function retrieves the name of the class to which the specified window belongs. (GetClassNameW)
GetClassWord

Retrieves the 16-bit (WORD) value at the specified offset into the extra class memory for the window class to which the specified window belongs.
GetClientRect

Retrieves the coordinates of a window's client area.
GetDesktopWindow

Retrieves a handle to the desktop window. The desktop window covers the entire screen. The desktop window is the area on top of which other windows are painted.
GetForegroundWindow

Retrieves a handle to the foreground window (the window with which the user is currently working). The system assigns a slightly higher priority to the thread that creates the foreground window than it does to other threads.
GetGUIThreadInfo

Retrieves information about the active window or a specified GUI thread.
GetInputState

Determines whether there are mouse-button or keyboard messages in the calling thread's message queue.
GetLastActivePopup

Determines which pop-up window owned by the specified window was most recently active.
GetLayeredWindowAttributes

Retrieves the opacity and transparency color key of a layered window.
GetMessage

The GetMessage function retrieves a message from the calling thread's message queue. (GetMessage)
GetMessageA

Retrieves a message from the calling thread's message queue. The function dispatches incoming sent messages until a posted message is available for retrieval. (GetMessageA)
GetMessageExtraInfo

Retrieves the extra message information for the current thread. Extra message information is an application- or driver-defined value associated with the current thread's message queue.
GetMessagePos

Retrieves the cursor position for the last message retrieved by the GetMessage function.
GetMessageTime

Retrieves the message time for the last message retrieved by the GetMessage function.
GetMessageW

The GetMessageW function (Unicode) retrieves a message from the calling thread's message queue. (GetMessageW)
GetNextWindow

Retrieves a handle to the next or previous window in the Z-Order. The next window is below the specified window; the previous window is above.
GetParent

Retrieves a handle to the specified window's parent or owner.
GetProcessDefaultLayout

Retrieves the default layout that is used when windows are created with no parent or owner.
GetPropA

Retrieves a data handle from the property list of the specified window. The character string identifies the handle to be retrieved. The string and handle must have been added to the property list by a previous call to the SetProp function. (ANSI)
GetPropW

Retrieves a data handle from the property list of the specified window. The character string identifies the handle to be retrieved. The string and handle must have been added to the property list by a previous call to the SetProp function. (Unicode)
GetQueueStatus

Retrieves the type of messages found in the calling thread's message queue.
GetShellWindow

Retrieves a handle to the Shell's desktop window.
GetSysColor

Retrieves the current color of the specified display element.
GetSystemMetrics

Retrieves the specified system metric or system configuration setting.
GetTitleBarInfo

Retrieves information about the specified title bar.
GetTopWindow

Examines the Z order of the child windows associated with the specified parent window and retrieves a handle to the child window at the top of the Z order.
GetWindow

Retrieves a handle to a window that has the specified relationship (Z-Order or owner) to the specified window.
GetWindowDisplayAffinity

Retrieves the current display affinity setting, from any process, for a given window.
GetWindowInfo

Retrieves information about the specified window. (GetWindowInfo)
GetWindowLongA

Retrieves information about the specified window. (GetWindowLongA)
GetWindowLongPtrA

Retrieves information about the specified window. The function also retrieves the value at a specified offset into the extra window memory. (ANSI)
GetWindowLongPtrW

Retrieves information about the specified window. The function also retrieves the value at a specified offset into the extra window memory. (Unicode)
GetWindowLongW

Retrieves information about the specified window. (GetWindowLongW)
GetWindowModuleFileNameA

Retrieves the full path and file name of the module associated with the specified window handle. (ANSI)
GetWindowModuleFileNameW

Retrieves the full path and file name of the module associated with the specified window handle. (Unicode)
GetWindowPlacement

Retrieves the show state and the restored, minimized, and maximized positions of the specified window.
GetWindowRect

Retrieves the dimensions of the bounding rectangle of the specified window. The dimensions are given in screen coordinates that are relative to the upper-left corner of the screen.
GetWindowTextA

Copies the text of the specified window's title bar (if it has one) into a buffer. If the specified window is a control, the text of the control is copied. However, GetWindowText cannot retrieve the text of a control in another application. (ANSI)
GetWindowTextLengthA

Retrieves the length, in characters, of the specified window's title bar text (if the window has a title bar). (ANSI)
GetWindowTextLengthW

Retrieves the length, in characters, of the specified window's title bar text (if the window has a title bar). (Unicode)
GetWindowTextW

Copies the text of the specified window's title bar (if it has one) into a buffer. If the specified window is a control, the text of the control is copied. However, GetWindowText cannot retrieve the text of a control in another application. (Unicode)
GetWindowThreadProcessId

Retrieves the identifier of the thread that created the specified window and, optionally, the identifier of the process that created the window.
GetWindowWord

Retrieves the 16-bit (DWORD) value at the specified offset into the extra window memor
HOOKPROC

An application-defined or library-defined callback function used with the SetWindowsHookEx function. The system calls this function after the SendMessage function is called. The hook procedure can examine the message; it cannot modify it.
InSendMessage

Determines whether the current window procedure is processing a message that was sent from another thread (in the same process or a different process) by a call to the SendMessage function.
InSendMessageEx

Determines whether the current window procedure is processing a message that was sent from another thread (in the same process or a different process).
InternalGetWindowText

Copies the text of the specified window's title bar (if it has one) into a buffer.
IsChild

Determines whether a window is a child window or descendant window of a specified parent window.
IsGUIThread

Determines whether the calling thread is already a GUI thread. It can also optionally convert the thread to a GUI thread.
IsHungAppWindow

Determines whether the system considers that a specified application is not responding.
IsIconic

Determines whether the specified window is minimized (iconic).
IsProcessDPIAware

IsProcessDPIAware may be altered or unavailable. Instead, use GetProcessDPIAwareness.
IsWindow

Determines whether the specified window handle identifies an existing window.
IsWindowArranged

Determines whether the specified window is arranged (that is, whether it's snapped).
IsWindowUnicode

Determines whether the specified window is a native Unicode window.
IsWindowVisible

Determines the visibility state of the specified window.
IsZoomed

Determines whether a window is maximized.
KillTimer

Destroys the specified timer.
LockSetForegroundWindow

The foreground process can call the LockSetForegroundWindow function to disable calls to the SetForegroundWindow function.
LogicalToPhysicalPoint

Converts the logical coordinates of a point in a window to physical coordinates.
MAKELPARAM

Creates a value for use as an lParam parameter in a message. The macro concatenates the specified values.
MAKELRESULT

Creates a value for use as a return value from a window procedure. The macro concatenates the specified values.
MAKEWPARAM

Creates a value for use as a wParam parameter in a message. The macro concatenates the specified values.
MoveWindow

Changes the position and dimensions of the specified window.
OpenIcon

Restores a minimized (iconic) window to its previous size and position; it then activates the window.
PeekMessageA

Dispatches incoming nonqueued messages, checks the thread message queue for a posted message, and retrieves the message (if any exist). (ANSI)
PeekMessageW

Dispatches incoming nonqueued messages, checks the thread message queue for a posted message, and retrieves the message (if any exist). (Unicode)
PhysicalToLogicalPoint

Converts the physical coordinates of a point in a window to logical coordinates.
PostMessageA

Places (posts) a message in the message queue associated with the thread that created the specified window and returns without waiting for the thread to process the message. (ANSI)
PostMessageW

Places (posts) a message in the message queue associated with the thread that created the specified window and returns without waiting for the thread to process the message. (Unicode)
PostQuitMessage

Indicates to the system that a thread has made a request to terminate (quit). It is typically used in response to a WM_DESTROY message.
PostThreadMessageA

Posts a message to the message queue of the specified thread. It returns without waiting for the thread to process the message. (ANSI)
PostThreadMessageW

Posts a message to the message queue of the specified thread. It returns without waiting for the thread to process the message. (Unicode)
PROPENUMPROCA

An application-defined callback function used with the EnumProps function. (ANSI)
PROPENUMPROCEXA

Application-defined callback function used with the EnumPropsEx function. (ANSI)
PROPENUMPROCEXW

Application-defined callback function used with the EnumPropsEx function. (Unicode)
PROPENUMPROCW

An application-defined callback function used with the EnumProps function. (Unicode)
RealChildWindowFromPoint

Retrieves a handle to the child window at the specified point. The search is restricted to immediate child windows; grandchildren and deeper descendant windows are not searched.
RealGetWindowClassA

Retrieves a string that specifies the window type. (ANSI)
RealGetWindowClassW

Retrieves a string that specifies the window type. (Unicode)
RegisterClassA

Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function. (RegisterClassA)
RegisterClassExA

Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function. (RegisterClassExA)
RegisterClassExW

Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function. (RegisterClassExW)
RegisterClassW

Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function. (RegisterClassW)
RegisterShellHookWindow

Registers a specified Shell window to receive certain messages for events or notifications that are useful to Shell applications.
RegisterWindowMessageA

Defines a new window message that is guaranteed to be unique throughout the system. The message value can be used when sending or posting messages. (ANSI)
RegisterWindowMessageW

Defines a new window message that is guaranteed to be unique throughout the system. The message value can be used when sending or posting messages. (Unicode)
RemovePropA

Removes an entry from the property list of the specified window. The specified character string identifies the entry to be removed. (ANSI)
RemovePropW

Removes an entry from the property list of the specified window. The specified character string identifies the entry to be removed. (Unicode)
ReplyMessage

Replies to a message sent from another thread by the SendMessage function.
SENDASYNCPROC

An application-defined callback function used with the SendMessageCallback function.
SendMessage

The SendMessage function sends the specified message to a window or windows. (SendMessage function)
SendMessageA

Sends the specified message to a window or windows. The SendMessage function calls the window procedure for the specified window and does not return until the window procedure has processed the message. (SendMessageA)
SendMessageCallbackA

Sends the specified message to a window or windows. (SendMessageCallbackA)
SendMessageCallbackW

Sends the specified message to a window or windows. (SendMessageCallbackW)
SendMessageTimeoutA

Sends the specified message to one or more windows. (ANSI)
SendMessageTimeoutW

Sends the specified message to one or more windows. (Unicode)
SendMessageW

The SendMessageW (Unicode) function sends the specified message to a window or windows. (SendMessageW)
SendNotifyMessageA

Sends the specified message to a window or windows. (SendNotifyMessageA)
SendNotifyMessageW

Sends the specified message to a window or windows. (SendNotifyMessageW)
SetAdditionalForegroundBoostProcesses

SetAdditionalForegroundBoostProcesses is a performance assist API to help applications with a multi-process application model where multiple processes contribute to a foreground experience, either as data or rendering.
SetClassLongA

Replaces the specified 32-bit (long) value at the specified offset into the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs. (ANSI)
SetClassLongPtrA

Replaces the specified value at the specified offset in the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs. (ANSI)
SetClassLongPtrW

Replaces the specified value at the specified offset in the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs. (Unicode)
SetClassLongW

Replaces the specified 32-bit (long) value at the specified offset into the extra class memory or the WNDCLASSEX structure for the class to which the specified window belongs. (Unicode)
SetClassWord

Replaces the 16-bit (WORD) value at the specified offset into the extra class memory for the window class to which the specified window belongs.
SetCoalescableTimer

Creates a timer with the specified time-out value and coalescing tolerance delay.
SetForegroundWindow

Brings the thread that created the specified window into the foreground and activates the window.
SetLayeredWindowAttributes

Sets the opacity and transparency color key of a layered window.
SetMessageExtraInfo

Sets the extra message information for the current thread.
SetParent

Changes the parent window of the specified child window.
SetProcessDefaultLayout

Changes the default layout when windows are created with no parent or owner only for the currently running process.
SetProcessDPIAware

SetProcessDPIAware may be altered or unavailable. Instead, use SetProcessDPIAwareness.
SetPropA

Adds a new entry or changes an existing entry in the property list of the specified window. (ANSI)
SetPropW

Adds a new entry or changes an existing entry in the property list of the specified window. (Unicode)
SetSysColors

Sets the colors for the specified display elements.
SetTimer

Creates a timer with the specified time-out value.
SetWindowDisplayAffinity

Stores the display affinity setting in kernel mode on the hWnd associated with the window.
SetWindowLongA

Changes an attribute of the specified window. The function also sets the 32-bit (long) value at the specified offset into the extra window memory. (ANSI)
SetWindowLongPtrA

Changes an attribute of the specified window. (ANSI)
SetWindowLongPtrW

Changes an attribute of the specified window. (Unicode)
SetWindowLongW

Changes an attribute of the specified window. The function also sets the 32-bit (long) value at the specified offset into the extra window memory. (Unicode)
SetWindowPlacement

Sets the show state and the restored, minimized, and maximized positions of the specified window.
SetWindowPos

Changes the size, position, and Z order of a child, pop-up, or top-level window. These windows are ordered according to their appearance on the screen. The topmost window receives the highest rank and is the first window in the Z order.
SetWindowsHookExA

Installs an application-defined hook procedure into a hook chain. (ANSI)
SetWindowsHookExW

Installs an application-defined hook procedure into a hook chain. (Unicode)
SetWindowTextA

Changes the text of the specified window's title bar (if it has one). If the specified window is a control, the text of the control is changed. However, SetWindowText cannot change the text of a control in another application. (ANSI)
SetWindowTextW

Changes the text of the specified window's title bar (if it has one). If the specified window is a control, the text of the control is changed. However, SetWindowText cannot change the text of a control in another application. (Unicode)
ShowOwnedPopups

Shows or hides all pop-up windows owned by the specified window.
ShowWindow

Sets the specified window's show state.
ShowWindowAsync

Sets the show state of a window without waiting for the operation to complete.
SoundSentry

Triggers a visual signal to indicate that a sound is playing.
SwitchToThisWindow

Switches focus to the specified window and brings it to the foreground.
SystemParametersInfoA

Retrieves or sets the value of one of the system-wide parameters. (ANSI)
SystemParametersInfoW

Retrieves or sets the value of one of the system-wide parameters. (Unicode)
TileWindows

Tiles the specified child windows of the specified parent window.
TIMERPROC

An application-defined callback function that processes WM_TIMER messages. The TIMERPROC type defines a pointer to this callback function. TimerProc is a placeholder for the application-defined function name.
TranslateMDISysAccel

Processes accelerator keystrokes for window menu commands of the multiple-document interface (MDI) child windows associated with the specified MDI client window.
TranslateMessage

Translates virtual-key messages into character messages. The character messages are posted to the calling thread's message queue, to be read the next time the thread calls the GetMessage or PeekMessage function.
UnhookWindowsHookEx

Removes a hook procedure installed in a hook chain by the SetWindowsHookEx function.
UnregisterClassA

Unregisters a window class, freeing the memory required for the class. (ANSI)
UnregisterClassW

Unregisters a window class, freeing the memory required for the class. (Unicode)
UpdateLayeredWindow

Updates the position, size, shape, content, and translucency of a layered window.
WaitMessage

Yields control to other threads when a thread has no other messages in its message queue. The WaitMessage function suspends the thread and does not return until a new message is placed in the thread's message queue.
WindowFromPhysicalPoint

Retrieves a handle to the window that contains the specified physical point.
WindowFromPoint

Retrieves a handle to the window that contains the specified point.
WinMain

The user-provided entry point for a graphical Windows-based application.
WNDPROC

A callback function, which you define in your application, that processes messages sent to a window.

Structures

 
ALTTABINFO

Contains status information for the application-switching (ALT+TAB) window.
ANIMATIONINFO

Describes the animation effects associated with user actions.
AUDIODESCRIPTION

Contains information associated with audio descriptions. This structure is used with the SystemParametersInfo function when the SPI_GETAUDIODESCRIPTION or SPI_SETAUDIODESCRIPTION action value is specified.
BSMINFO

Contains information about a window that denied a request from BroadcastSystemMessageEx.
CBT_CREATEWNDA

Contains information passed to a WH_CBT hook procedure, CBTProc, before a window is created. (ANSI)
CBT_CREATEWNDW

Contains information passed to a WH_CBT hook procedure, CBTProc, before a window is created. (Unicode)
CBTACTIVATESTRUCT

Contains information passed to a WH_CBT hook procedure, CBTProc, before a window is activated.
CHANGEFILTERSTRUCT

Contains extended result information obtained by calling the ChangeWindowMessageFilterEx function.
CLIENTCREATESTRUCT

Contains information about the menu and first multiple-document interface (MDI) child window of an MDI client window.
CREATESTRUCTA

Defines the initialization parameters passed to the window procedure of an application. These members are identical to the parameters of the CreateWindowEx function. (ANSI)
CREATESTRUCTW

Defines the initialization parameters passed to the window procedure of an application. These members are identical to the parameters of the CreateWindowEx function. (Unicode)
CWPRETSTRUCT

Defines the message parameters passed to a WH_CALLWNDPROCRET hook procedure, CallWndRetProc.
CWPSTRUCT

Defines the message parameters passed to a WH_CALLWNDPROC hook procedure, CallWndProc.
DEBUGHOOKINFO

Contains debugging information passed to a WH_DEBUG hook procedure, DebugProc.
EVENTMSG

Contains information about a hardware message sent to the system message queue. This structure is used to store message information for the JournalPlaybackProc callback function.
GUITHREADINFO

Contains information about a GUI thread.
KBDLLHOOKSTRUCT

Contains information about a low-level keyboard input event.
MDICREATESTRUCTA

Contains information about the class, title, owner, location, and size of a multiple-document interface (MDI) child window. (ANSI)
MDICREATESTRUCTW

Contains information about the class, title, owner, location, and size of a multiple-document interface (MDI) child window. (Unicode)
MINIMIZEDMETRICS

Contains the scalable metrics associated with minimized windows.
MINMAXINFO

Contains information about a window's maximized size and position and its minimum and maximum tracking size.
MOUSEHOOKSTRUCT

Contains information about a mouse event passed to a WH_MOUSE hook procedure, MouseProc.
MOUSEHOOKSTRUCTEX

Contains information about a mouse event passed to a WH_MOUSE hook procedure, MouseProc. This is an extension of the MOUSEHOOKSTRUCT structure that includes information about wheel movement or the use of the X button.
MSG

Contains message information from a thread's message queue.
MSLLHOOKSTRUCT

Contains information about a low-level mouse input event.
NCCALCSIZE_PARAMS

Contains information that an application can use while processing the WM_NCCALCSIZE message to calculate the size, position, and valid contents of the client area of a window.
NONCLIENTMETRICSA

Contains the scalable metrics associated with the nonclient area of a nonminimized window. (ANSI)
NONCLIENTMETRICSW

Contains the scalable metrics associated with the nonclient area of a nonminimized window. (Unicode)
STYLESTRUCT

Contains the styles for a window.
TITLEBARINFO

Contains title bar information.
TITLEBARINFOEX

Expands on the information described in the TITLEBARINFO structure by including the coordinates of each element of the title bar.
UPDATELAYEREDWINDOWINFO

Used by UpdateLayeredWindowIndirect to provide position, size, shape, content, and translucency information for a layered window.
WINDOWINFO

Contains window information.
WINDOWPLACEMENT

Contains information about the placement of a window on the screen.
WINDOWPOS

Contains information about the size and position of a window.
WNDCLASSA

Contains the window class attributes that are registered by the RegisterClass function. (ANSI)
WNDCLASSEXA

Contains window class information. (ANSI)
WNDCLASSEXW

Contains window class information. (Unicode)
WNDCLASSW

Contains the window class attributes that are registered by the RegisterClass function. (Unicode)