Отправляю сообщение из одной программы в другую (SendMessage, Win32). Первое отправляется, второе отправляется, третье... ещё несколько отправляются. А потом перестают. И программа, отправляющая сообщения, зависает. Как раз на SendMessage.

Почему же?

ОКАЗЫВАЕТСЯ, я для своего удобства и пущего контроля в принимающей программе указал на каждое приходящее сообщение выводить диалоговое окно (MessageBox). И не закрывал его (т.к. вторая программа была на фоне и я не видел, что она выводит). А пока оно не закрыто, очередь сообщений оригинального окна не обрабатывается. Её размер ограничен. Фейл.

Но всё же -- как предотвратить зависание посылающей программы, если принимающая не обрабатывает сообщения?