Microsoft KB Archive/64296

{|
 * width="100%"|

HOWTO: Broadcast Messages Using PostMessage & SendMessage

 * }

Q64296

-

The information in this article applies to:


 * Microsoft Windows Software Development Kit (SDK)
 * Microsoft Win32 Software Development Kit (SDK)

-

SUMMARY
When SendMessage is used to send a broadcast message (hwnd = 0xFFFF or hwnd = -1), the message is sent to all top-level windows. A message broadcast by PostMessage is only sent to top-level windows that are visible, enabled, and have no owner.

You might observe the effect of the difference when, for example, the top- level window of your application calls DialogBox to present a modal dialog box. While the modal dialog box exists, its owner (your top-level window) will be disabled. Messages broadcast using PostMessage will not reach the top-level window because the window is disabled, and will not reach the dialog box because the dialog box has an owner. Messages broadcast using SendMessage will reach both the top-level window and the dialog.

In Windows 3.1, PostMessage will broadcast to invisible and disabled windows just like SendMessage already does.

Both PostMessage and SendMessage actually broadcast using the same broadcast procedure. This procedure does some additional screening to make sure that pop-up menus, the task manager window, and icon title windows are insulated from broadcast messages.

Keywords : kbOSWinNT kbGrpDSUser kbOSWin kbWndw kbWndwMsg

Issue type : kbhowto

Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch kbWinSDKSearch