When SendMessage sends the BM_CLICK message to the button in a different process it will block until that other process has returned from handling the message. If the button click in the receiving process opens a message box that enters a modal loop then the window procedure that received the BM_CLICK message will not return from handling BM_CLICK until the message box is dismissed. So while the message box is active the sending process is still blocking inside its call to SendMessage. Consequently, after a short time Windows will see the sending process as "Not Responding" since it has stopped handling window messages.
If the sending process uses a function that returns immediately like SendNotifyMessage or SendMessageCallback then the problem will be avoided. The sender can also use SendMessageTimeout to avoid blocking indefinitely.