Spy++ was showing that the consumer window was responding to the SendMessage function with a default response of 0x0000, at least for message 0x0400, so the producer window was only momentarily blocked, as manifested by a groggy 'send button'. The Windows SDK documentation describes several ranges of message numbers, and it seems safer to use messages in the range 0x8000, because messages in the 0x0400 range already have a history of use.